如何在Java中使用在另一个方法上创建的对象?

时间:2016-06-05 22:04:03

标签: java swing methods jframe jlabel

我是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;
    }
}

2 个答案:

答案 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"));
    }
}