Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我可以在java桌面应用程序中这样做吗?_Java_User Interface - Fatal编程技术网

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

我可以在java桌面应用程序中这样做吗?,java,user-interface,Java,User Interface,我想在java桌面上制作一个程序。我有两张桌子,“桌子一”和“桌子二”。 当我按下表框中的“按钮1”时,显示“表1”,当我按下“按钮2”时,显示“表2” 谁能告诉我怎么做?Thx您可以用一个 在构建面板时,类似于以下内容: myPanel = new JPanel(new CardPanel()); myPanel.add(myPanelContainingTable1, CONSTANT_FOR_BUTTON1); myPanel.add(myPanelContainingTable2, CO

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


谁能告诉我怎么做?Thx

您可以用一个

在构建面板时,类似于以下内容:

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);
}

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

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

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

或者,按照akf的建议,使用卡片布局