我制作了一个电影院系统。我把电影和电影院都放在jTable里。我还想给电影院看呢。电影院的座位由JButton和我把这些座位放在一个面板里。
当电影院选择的时候,我该如何展示座位?
这是我的密码。
final ArrayList<JPanel> panels = new ArrayList<>();
for(int k=0;k<theater.size();k++){
JPanel panel = new JPanel();
panel.setBounds(500, 0, 500, 500);
contentPane.add(panel);
int y = theater.get(k).getCapacity();
int x = 500/y;
for(int i=0;i<y;i++){
for(int j=0;j<y;j++){
JButton button = new JButton(letters[i]+numbers[j]);
button.setBounds(500 + x*j, 0 + x*i, x-5, x-5);
panel.add(button);
}
}
repaint();
panels.add(panel);
}发布于 2014-06-08 09:41:10
不要使用setBounds()方法,而是留给Layout Manger来设置组件的大小和位置。
使用适当的布局,如GridLayout,GridBagLayout等。
阅读有关布局如何使用各种布局管理器的更多信息
不要直接将组件添加到JFrame的内容窗格中,而是首先在另一个容器(如JPanel )中添加组件,然后将其添加到JFrame的内容窗格中。
https://stackoverflow.com/questions/24104820
复制相似问题