alt text http://img444.imageshack.us/img444/235/waaaaaaaaq.jpg我可以在java桌面应用程序中执行此操作吗?
我想使程序的Java桌面。我有2个表,“表1”和“表2”。 当我按“表1”中的“按钮1”显示“表1”,当我按“按钮2”“表2”显示。
任何人都可以告诉我该怎么做? Thx
alt text http://img444.imageshack.us/img444/235/waaaaaaaaq.jpg我可以在java桌面应用程序中执行此操作吗?
我想使程序的Java桌面。我有2个表,“表1”和“表2”。 当我按“表1”中的“按钮1”显示“表1”,当我按“按钮2”“表2”显示。
任何人都可以告诉我该怎么做? Thx
您可以使用CardLayout
轻松完成。
类似下面,施工时您的面板:
myPanel = new JPanel(new CardPanel());
myPanel.add(myPanelContainingTable1, CONSTANT_FOR_BUTTON1);
myPanel.add(myPanelContainingTable2, CONSTANT_FOR_BUTTON2);
在actionPerformed
方法,操作按钮操作:
CardLayout cl = (CardLayout) myPanel.getLayout();
if (event.getActionCommand().equals(actionCommandForButton1) {
cl.show(myPanel, CONSTANT_FOR_BUTTON1);
} else if (event.getActionCommand().equals(actionCommandForButton2) {
cl.show(myPanel, CONSTANT_FOR_BUTTON2);
}
所有的Java Swing组件有一个明显的特性。所以最简单的方法是将两个表放置在同一位置,但一次只能显示一个。然后在您的按钮处理程序中,您执行类似操作:
void button1_handler() {
table1.setVisible(true);
table2.setVisible(false);
}
void button2_handler() {
table1.setVisible(false);
table2.setVisible(true);
}
或者,如akf建议,使用CardLayout – 2010-02-26 04:28:43