我想在FlowLayout中使用JPanel。 添加2个awt列表。 然后我将这个JPanel(名为DualListPanel)添加到JFrame。
public class DualListPanel extends JPanel{
private List list1 = new List();
private List list2 = new List();
public DualListPanel(){
list1.setSize(500, 100);//Not working
list2.setSize(500, 100);//No tworking
add(list1);
add(list2);
}
}
框架:
public class SecondFrame extends JFrame{
private DualListPanel dualList = new DualListPanel();
public SecondFrame(){
setDefaultCloseOperation(EXIT_ON_CLOSE);
setVisible(true);
add(dualList, BorderLayout.CENTER);
setSize(600, 250);
}
public static void main(String[] args) {
SecondFrame secondFrame = new SecondFrame();
}
}
问题是我无法为列表设置大小? 使用awt列表,需要FlowLayout到JPanel。
谢谢
答案 0 :(得分:1)
我想在FlowLayout中使用JPanel。添加一个2 awt列表
不要在Swing应用程序中使用AWT列表。
而是使用JList
。阅读How to Use Lists上Swing教程中的部分,了解更多信息和工作示例。
列表的宽度将由添加到JList
的最大项目的宽度决定。或者您可以使用setPrototypeCellValue(...)
方法更改此项。
高度将由添加到列表中的项目数决定。或者您可以使用setVisibleRowCount()
方法更改此项。
所以重点是不要试图控制尺寸。使用API的方法为JList
提供提示,以确定其自身的大小。