Java 将布局为空的JPanel插入JScroll
我有一个JPanel(myPanel),里面有很多按钮(这个面板包含在另一个包含其他组件的面板中)。我会将这个JPanel(myPanel)插入一个滚动条,以便更好地控制按钮 这是我代码的一部分:Java 将布局为空的JPanel插入JScroll,java,swing,jscrollpane,layout-manager,null-layout-manager,Java,Swing,Jscrollpane,Layout Manager,Null Layout Manager,我有一个JPanel(myPanel),里面有很多按钮(这个面板包含在另一个包含其他组件的面板中)。我会将这个JPanel(myPanel)插入一个滚动条,以便更好地控制按钮 这是我代码的一部分: JPanel firstPanel = new JPanel(null); ...... ...... JPanel myPanel = new JPanel(null); myPanel.setBounds(0, position+22, 40
JPanel firstPanel = new JPanel(null);
......
......
JPanel myPanel = new JPanel(null);
myPanel.setBounds(0, position+22, 400, 500);
for (int i=0; i<size; i++) {
JButton button = new JButton(myList.get(i));
if (counter%4 == 0) {
button.setBounds(270, 0+(4*i), 90, 18);
} else if (counter%3 == 0) {
button.setBounds(180, 4+(4*i), 90, 18);
} else if (counter%2 == 0) {
button.setBounds(90, 8+(4*i), 90, 18);
} else {
button.setBounds(0, 12+(4*i), 90, 18);
}
myPanel.add(bottone);
}
......
......
firstPanel.add(myPanel);
JPanel firstPanel=newjpanel(空);
......
......
JPanel myPanel=新的JPanel(空);
myPanel.setBounds(0,位置+22400500);
对于(int i=0;i当JPanel使用null
布局时,您的问题似乎是询问如何将JPanel添加到JScrollPane,答案很简单:
- 首先也是最重要的不要使用
null
布局。使用null布局几乎可以保证JScrollPane持有的组件不会正确滚动,因为JScrollPane机制需要使用此布局
- 或者您需要创建一个扩展JPanel并实现可滚动接口的类,这将需要更多的工作,并且完全不必要的工作
- 相反,您必须学习如何使用布局管理器,然后使用适当的布局管理器组合,以使您的JPanel保存和显示其组件。请注意,您可以嵌套JPanel,每个JPanel使用自己的布局,从而轻松创建复杂但易于维护的GUI。请查看了解更多信息
- 将JPanel添加到JScrollPane很容易。可以将JPanel传递到JScrollPane的构造函数中:
JScrollPane scrollpane=new JScrollPane(myPanel);
或者通过setViewportView(myPanel)
将JPanel传递到JScrollPane的视口视图中。下面是关于这方面的详细信息和
当JPanel使用null
布局时,您的问题似乎是询问如何将JPanel添加到JScrollPane,答案很简单:
- 首先也是最重要的不要使用
null
布局。使用null布局几乎可以保证JScrollPane持有的组件不会正确滚动,因为JScrollPane机制需要使用此布局
- 或者您需要创建一个扩展JPanel并实现可滚动接口的类,这将需要更多的工作,并且完全不必要的工作
- 相反,您必须学习如何使用布局管理器,然后使用适当的布局管理器组合,以使您的JPanel保存和显示其组件。请注意,您可以嵌套JPanel,每个JPanel使用自己的布局,从而轻松创建复杂但易于维护的GUI。请查看了解更多信息
- 将JPanel添加到JScrollPane很容易。可以将JPanel传递到JScrollPane的构造函数中:
JScrollPane scrollpane=new JScrollPane(myPanel);
或者通过setViewportView(myPanel)
将JPanel传递到JScrollPane的视口视图中。下面是关于这方面的详细信息和
简单。首先,也最重要的是不要使用null
布局。这样做会将您的代码标记为新手程序,因为如果您创建了任意长度的Swing GUI,您将知道创建和维护适当使用布局管理器的GUI要容易得多。但更重要的是,使用null布局几乎可以保证JScrollPane持有的组件不会适当滚动。也请检查可能的副本。简单。首先,不要使用null
布局。这样做会将您的代码标记为新手程序,因为如果您创建了任意长度的Swing GUI,您将知道创建和维护GUI的适当版本要容易得多y使用布局管理器。但更重要的是,使用空布局几乎保证了JScrollPane持有的组件不会正确滚动。也可以作为可能的副本签出。