Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
181 views
in Technique[技术] by (71.8m points)

java - JFrame not presenting any Components

I am using the following code to create a very simple JFrame, but for some reason it doesn't show any components, just a blank frame. Why is this happening? I created frames a bunch of times and I just can't figure out what is wrong. The code is:

Main(){
    JFrame frame = new JFrame("Colorizer | By: NonameSL");
    frame.setSize(400,200);
    frame.setLocationRelativeTo(null);
    frame.setVisible(true);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    JPanel panel = new JPanel();
    frame.setContentPane(panel);
    textField=new JTextField("Enter your name!");
    textField.setBounds(0,0,40,200);
    textField.setVisible(true);
    frame.getContentPane().add(textField);
    button=new JButton("Go!");
    button.setBounds(0, 200, 40, 200);
    button.setVisible(true);
    frame.getContentPane().add(button);
    rectangle=new RecShape(Color.WHITE);
    rectangle.setBounds(0,40,400,160);
    rectangle.setVisible(false);
    frame.getContentPane().add(rectangle);
    Main.frame=frame;
    registerButton();
}

The RecShape class is a class I created to simply create a rectangle shape on screen. What is wrong?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

Put frame.setVisible(true); after adding components to JFrame, and it will show all the added components. Moreover, you should use specific layout rather than setting bounds for components. You can use a Layout Manager.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...