java - 为什么我的 CardLayout .show() 没有执行任何操作... Java Netbean

标签 java swing netbeans cardlayout

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

看这张图片

enter image description here

在此示例(图片)中,您可以看到卡片名称是card2,因此如果您想显示此选定的按钮,您应该使用

card.show(main_panel, "card2");

但不是

card.show(main_panel, "jButton1");

关于java - 为什么我的 CardLayout .show() 没有执行任何操作... Java Netbean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32549701/

相关文章:

java - 防止 JavaFX 线程死于 JFXPanel Swing 互操作?

java - 如何在netbeans项目中导入zip文件

java - 在Hbase中存储图片丢失Meta数据和Exif

java - 二维数组的构造函数仅包含最后一个值

java - 如何检测两个鼠标按钮是否同时松开?

java - 无法在 java netbeans 中创建按钮网格

css - TextArea 不处理 MouseEvent.MOUSE_PRESSED

java - 可执行jar文件错误

java - JOLT 转换修改覆盖 - 替换数组中的元素值

java - 具有多个 JTable 的大型 JScrollPane — 如何分页