我是Swing的新手,我想知道如何在另一种方法中使用在一个方法上实例化的对象。我需要将label
添加到frame
对象,但我不想从createFrame
方法执行此操作。那么,我该怎么办?
public class Main
{
public static void main(String[] args)
{
FrameCreation.createFrame(600, 600, "Test");
FrameCreation.createLabel("Whatever");
}
}
public class FrameCreation
{
public static JFrame createFrame(int width, int height, String name)
{
JFrame frame = new JFrame(name);
frame.setVisible(true);
frame.setSize(width, height);
frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
return frame;
}
public static JLabel createLabel(String text)
{
JLabel label = new JLabel(text);
return label;
}
}
答案 0 :(得分:0)
首先,如果要将JLabel添加到JFrame,则必须创建JPanel。订单如下:
JFrame - > JPanel - >的JLabel
所以你可以写(主要):
JFrame frame = FrameCreation.createFrame(600, 600, "Test");
JLabel label = FrameCreation.createLabel("Whatever");
JPanel panel = new JPanel();
panel.add(label);
frame.add(panel);
答案 1 :(得分:0)
我已经找到了解决方案,我们走了:
public class Main
{
public static void main(String[] args)
{
FrameCreation.createFrame(600, 600, "Test").add(FrameCreation.createLabel("Whatever"));
}
}