java - 无法在硬编码 java 应用程序中的 jFrame 之间进行更改?

标签 java swing netbeans

当我创建 Swing GUI 类时,我可以使用以下代码通过 jButton 从一个 JFrame 更改为另一个 JFrame:

private void btnChangeClassActionPerformed(java.awt.event.ActionEvent evt) {                                               

        ClassA ca = new ClassA();
        ca.setVisible(true);
        this.dispose();
    }

但是当我创建一个空白的 java 类(硬编码)时,此代码不起作用,因为 .setVisible(true); 不起作用。事实上,当我按 ctrl + 空格键提出建议时,ca. 之后没有列出任何内容。仅当我尝试使用硬编码应用程序更改 jFrame 时才会发生这种情况。

堆栈跟踪产生此错误:

Exception in thread "AWT-EventQueue-0" java.lang.RuntimeException:
Uncompilable source code - Erroneous sym type: classPackage.ClassB.setVisible

如何纠正这个错误?

最佳答案

我不确定你的问题是什么,但你尝试做的事情应该有效。这是我的 ClassA.java 示例

public class ClassA extends JFrame{
    public static void main(String[] args) {
        // TODO Auto-generated method stub
        System.out.println("helo moto");
        ClassA a = new ClassA();
    }

    ClassA(){
        super();
        setSize(200, 200);
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        JButton button = new JButton("ClassB");
        button.addActionListener(new ActionListener(){
            @Override
            public void actionPerformed(ActionEvent e) {
                new ClassB();
                ClassA.this.dispose();
            }
        });
        Container container = getContentPane();
        container.add(button);
        setVisible(true);
    }
}

这是 ClassB.java:

public class ClassB extends JFrame{
    ClassB(){
        super();
        setSize(200, 200);
        setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
        JButton button = new JButton("ClassA");

        button.addActionListener(new ActionListener(){
            @Override
            public void actionPerformed(ActionEvent e) {
                new ClassA();
                ClassB.this.dispose();
            }
        });
        Container container = getContentPane();
        container.add(button);
        setVisible(true);
    }   
}

关于java - 无法在硬编码 java 应用程序中的 jFrame 之间进行更改?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38252087/

相关文章:

java - 由 GUI 构建器创建的程序和不使用 GUI 构建器的代码编写的程序哪个运行速度更快?

java - 从参数中将字符串内容分配给 Java 中的新字符串

java - 字符串参数索引

java - JAVA中优先级队列的比较

java - 在生产中更改 Logback 附加程序级别的策略

java - Swing 星级

java - 使 JList 的选定索引消失

java - 等待直到按钮被按下

java - REST、MVC - 资源链接创建应在哪一层发生?

java - 如何在 Netbeans 中自动缩进?