我想使用带有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 list,需要 FlowLayout 到 JPanel。
谢谢
我想使用带有 FlowLayout 的 JPanel。 向其添加 2 AWT 列表
不要在 Swing 应用程序中使用 AWT 列表。
而是使用JList
。阅读 Swing 教程中有关如何使用列表的部分,以获取更多信息和工作示例。
列表的宽度将由添加到JList
的最大项目的宽度决定。或者,您可以使用 setPrototypeCellValue(...)
方法更改此设置。
高度将由添加到列表中的项目数决定。或者,您可以使用 setVisibleRowCount()
方法更改此设置。
所以关键是不要试图控制大小。使用 API 的方法为JList
提供提示,以确定其自己的大小。