【问题标题】:How to add JButton on JScrollPane?如何在 JScrollPane 上添加 JButton?
【发布时间】:2014-03-08 11:51:54
【问题描述】:

您好,我正在尝试制作一个桌面应用程序,我正在使用 jscrollpane。我想在 jscrollpane 中添加 multipul 按钮。我只能在那里添加一个按钮我该怎么做

我的代码如下

 public class AddingToJScrollPane {

  public static void main(String args[]) {
    JFrame frame = new JFrame("Tabbed Pane Sample");
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

    JLabel label = new JLabel("Label");
    label.setPreferredSize(new Dimension(1000, 1000));
    JScrollPane jScrollPane = new JScrollPane(label);

    JButton jButton1 = new JButton("Hello");
     JButton jButton2 = new JButton("Hello");

    jScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    jScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    jScrollPane.setViewportBorder(new LineBorder(Color.RED));
    jScrollPane.getViewport().add(jButton1,jButton2);

    frame.add(jScrollPane, BorderLayout.NORTH);
    frame.setSize(400, 150);
    frame.setVisible(true);
  }
}

更新代码

public class AddingToJScrollPane {

  public static void main(String args[]) {
    JFrame frame = new JFrame("Tabbed Pane Sample");
    JPanel panel = new JPanel();
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
panel.setLayout( new GridLayout() );
    JLabel label = new JLabel("Label");
    label.setPreferredSize(new Dimension(1000, 1000));
    JScrollPane jScrollPane = new JScrollPane(panel);

    JButton jButton1 = new JButton("Hello");
     JButton jButton2 = new JButton("He");

   // jScrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS);
    jScrollPane.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    jScrollPane.setViewportBorder(new LineBorder(Color.RED));
   // jScrollPane.getViewport().add(panel);

    frame.add(jScrollPane, BorderLayout.NORTH);
    panel.add(jButton1);
     panel.add(jButton2);
    frame.setSize(400, 150);
    frame.setVisible(true);
  }
}

我怎样才能达到我想要的输出 提前致谢

【问题讨论】:

  • “我怎样才能达到我想要的输出” 你想要的输出到底是什么
  • 编辑您的帖子以展示您的尝试。 不要删除当前代码。只需在你所拥有的下面写 EDIT,然后在它下面发布你的新代码。
  • “我怎样才能达到我想要的输出” 复制/粘贴你的问题部分,你描述所需的输出。

标签: java swing jbutton jscrollpane


【解决方案1】:

将按钮添加到具有合适布局的面板(例如GridLayoutFlowLayout)。将面板添加到滚动窗格。

【讨论】:

  • 我这样做了,并且能够获得多个按钮,但它们没有以适当的方式出现
  • 1) 我不是你的“亲爱的”。 2) 所述问题是“将多个按钮放入滚动窗格”,因此 已解决。 3)如果你希望我能够解决布局问题,不知道使用了什么布局,或者预期的效果是什么,你一定认为我是某种神奇的巫师。我不是。
  • 用于自然滚动以更改从 JScrollPane 派生的 JScrollBars 的 setUnitIncrement 中的 intereg 值
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多