java - 我的面板无法滚动并且滚动 Pane 没有 slider

标签 java swing slider panel scrollpane

我已经尝试了所有这些,但我的滚动 Pane 不会滚动,并且里面没有 slider ,滚动条显示,但里面没有 slider ,我已经设置了自动滚动和焦点遍历策略,但我仍然一无所获,请问我做错了什么?

 JFrame frame = new JFrame("Web Dev Portal v1.0");
    frame.setResizable(true); 
    frame.setBackground(SystemColor.control); 
     frame.setSize(1050, 2000); 
      frame.setLocation(70, 70);
      frame.setLayout(new BorderLayout());
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
      JPanel p2 = new JPanel(); 
       p2.setBackground(SystemColor.control); 
        p2.setLayout(null);
        //creating the scrollpane object and adding the panel into it
      JScrollPane pane = new JScrollPane(p2, ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS, ScrollPaneConstants.HORIZONTAL_SCROLLBAR_AS_NEEDED);
      pane.setFocusTraversalPolicyProvider(true);
      pane.setAutoscrolls(true); 
      //setting the size of the pane
      pane.setPreferredSize(new Dimension(1202, 2500)); 
       //adding the scrollpane to frame
      frame.setContentPane(pane);
            SwingUtilities.invokeLater(new Runnable(){
          @Override
           public void run(){
            frame.setVisible(true);  
          }  

最佳答案

为了显示 ScrollView ,应该包含比滚动 Pane 大的组件。

在 'pane.setPreferredSize(new Dimension(1202, 2500));' 后添加以下代码

JPanel jp = new JPanel();
jp.setPreferredSize(new Dimension(1500,3000));
pane.getViewport().add(jp);

关于java - 我的面板无法滚动并且滚动 Pane 没有 slider ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60271029/

相关文章:

java - 如何防止具有 META-INF\services\javax.xml.transform.TransformerFactory 的 xalan.jar 接管 Xalan 实现中内置的 JDK 1.6?

java - GridBagLayout Java 中的边距/填充

java - 如何修改JComboBox值中的字体系列?

java - 如何在 MouseEnter 上为 JLabel 添加下划线

javascript - 多个图像 slider 加载图像错误

flutter - slider (在自定义类中创建)不移动或更新

java - 将查询结果映射到 Java 中的 POJO 构造函数

java - Apache POI 在空电子表格中看到列?

java - 连接表和 hibernate.PropertyAccessException : could not set a field value by reflection setter 中的映射值

javascript - 通过范围 slider 更改@keyframes 中的关键帧选择器