我是一名新的java程序员,我正面临着这个问题。我添加的JButton和textfield没有显示在我的面板上。我真的不知道为什么,因为我已经将所有组件添加到面板
这是我的代码:
import javax.swing.*;
import java.awt.event.*;
import javax.swing.event.*;
import java.awt.*;
public class aboutUs extends JFrame implements ActionListener {
JButton b,b2,b3,b4;
JTextField t1;
JTextArea a1;
JPanel p1, p2,p3,p11,AboutPanel;
JFrame about = new JFrame ("About us");
JRadioButton r1,r2;
JMenuBar menu;
JMenu open;
JMenuItem aboutFrame;
public aboutUs (){
about.setSize(500,500);
about.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
about.setLayout(new BorderLayout());
about.setLocationRelativeTo(null);
about.setResizable(false);
AboutPanel = new JPanel (new GridLayout (1,2));
t1 = new JTextField (30);
AboutPanel.add(t1);
b4 = new JButton ("click here");
AboutPanel.add(b4);
add(AboutPanel, BorderLayout.CENTER);
about.setVisible (true);
}
public void actionPerformed (ActionEvent e){
}
}
class test {
public static void main (String [] args){
aboutUs a = new aboutUs();
}
}
答案 0 :(得分:3)
您正在创建名为JFrame
的{{1}}并使其可见。但是about
类是aboutUs
,您已将按钮和文本添加到该类。
更改:
JFrame
到
add(AboutPanel, BorderLayout.CENTER);
答案 1 :(得分:0)
添加about.pack()
,然后添加about.setVisible (true);
编辑:是的,就像史蒂夫说你还缺少about.add(AboutPanel, BorderLayout.CENTER);
答案 2 :(得分:0)
尝试:
about.add(AboutPanel, BorderLayout.CENTER);