private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
CardLayout card = (CardLayout)main_panel.getLayout();
card.show(main_panel, "jPanel1");
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
CardLayout card = (CardLayout)main_panel.getLayout();
card.show(main_panel, "jPanel2");
}
嘿伙计们,我需要使用 CardLayout 来处理我现有的项目之一,但它从来没有工作过!所以我尝试制作一个新表单,而不是按照How to use CardLayout with Netbeans GUI Builder中的教程进行操作但我仍然无法让它工作...单击这些按钮后什么也不会发生。请问有什么帮助吗?
最佳答案
card.show(main_panel, "cardname");
您应该传递卡片名称而不是卡片布局中子面板的变量名称。您当前传递的是面板名称而不是卡名称。通常 netbeans 将卡名称设置为 card1,card2...
etc 。您可以通过从导航中选择子面板[jpanel1,2..]来查看卡片名称,并且在属性窗口中布局类别中有一行cardname
。
看这张图片
在此示例(图片)中,您可以看到卡片名称是card2
,因此如果您想显示此选定的按钮,您应该使用
card.show(main_panel, "card2");
但不是
card.show(main_panel, "jButton1");
关于java - 为什么我的 CardLayout .show() 没有执行任何操作... Java Netbean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32549701/