我一直在使用StackOverflow一段时间了,但这是我的第一个问题,所以如果有什么事情发生或似乎没有达到标准,请请关注我。
我想在另一个类(ClassFrom)中创建一个JPanel对象(此处称为“panel”),然后将它显示在另一个类中的另一个JFrame对象(此处称为“frame”)中( ClassTo)但是到目前为止似乎还有一些东西,因为当单击JLabel时,JPanel'面板'不会显示在JFrame'框架'中。
请有人在那里查看我的代码,请尽可能帮助我。我希望Will真的很感激。
继承我的代码。
import javax.swing.JFrame;
// The Class with the JFame that gets the components from ClassFrom
public class ClassTo {
JFrame frame = new JFrame("The JFrame");
ClassFrom classFrom = new ClassFrom();
public static void main (String[] args)
{
// This is where there seems to be a problem
frame.add(classFrom.contentMethod());
}
}
import javax.swing.JLabel;
import javax.swing.JPanel;
// The Class with the components to be added to the JFrame in ClassTo
public class ClassFrom {
public static void contentMethod() {
JPanel panel = new JPanel();
JLabel label = new JLabel("Try Label");
panel.add(label);
}
}
答案 0 :(得分:0)
问题在于尝试访问实例变量的静态方法。声明frame和classFrom为static或在main方法中解决编译错误。 编辑:正如Ingo指出的那样,将contentMethod的返回类型更改为JPanel并返回该面板,以便将其添加到frame变量中。