我有一个main.java文件,我喜欢用它来调用JPanel中的GUI。 这是我的第一次NetBeans体验,所以要温柔:-) ......
无法编译;我得到的错误是:Erroneous sym type: main.GUI.GUI
(这在解释时是有意义的。)
但是现在:我如何修复它?
我也试过了GUI.GUI();
,但没有得到正面结果..
(我以前习惯于编写C ++,但是因为导入不是java中的一个真正选项(或者是吗?)。
我的main.java:
package main;
public class Main {
public static void main(String[] args) {
GUI obj = new GUI();
obj.GUI();
}
}
我的GUI.java文件:
package main;
public class GUI extends javax.swing.JPanel {
public GUI() {
initComponents();
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 400, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 300, Short.MAX_VALUE)
);
}
}
答案 0 :(得分:0)
如果我正确理解您的问题,您希望显示Main类的GUI。要记住的一件事是无法显示JPanel本身。它必须在显示之前添加到JFrame中。尝试类似:
package main;
public class Main {
public static void main(String[] args) {
GUI obj = new GUI(); // creates your panel
JFrame frame = new JFrame("some title"); // creates the frame
frame.add(obj);
frame.setSize(200,300);
frame.setVisible(true);
}
}
答案 1 :(得分:-1)
GUI obj = new GUI(); 它创建了GUI的新对象。因此,构造函数已经运行。构造函数方法是特殊方法,在从类创建新对象时播放。