我可以在java桌面应用程序中这样做吗?

时间:2010-02-26 04:22:56

标签: java user-interface

alt text http://img444.imageshack.us/img444/235/waaaaaaaaq.jpg

我想制作一个程序java桌面。我有2个表,“表1”和“表2”。 当我按下表格框中的“按钮1”时显示“表1”,当我按下“按钮2”时,显示“表2”。

任何人都可以告诉我该怎么做? THX

2 个答案:

答案 0 :(得分:5)

您可以使用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);
}

答案 1 :(得分:1)

所有Java Swing组件都具有可见属性。因此,最简单的方法是将两个表放在同一位置,但一次只能看到一个。然后在按钮处理程序中,执行以下操作:

void button1_handler() {
  table1.setVisible(true);
  table2.setVisible(false);
}

void button2_handler() {
  table1.setVisible(false);
  table2.setVisible(true);
}