Swing基本操作:
JAVA显示一个带按钮的窗口:
1 import java.awt.*; 2 import javax.swing.*; 3 import javax.swing.border.EmptyBorder; 4 5 public class FrameDemo extends JFrame { 6 7 /** 8 * 在这里定义窗体中需要用到的组件 9 */ 10 private JPanel contentPane; //面板 11 private JButton button; //按钮 12 13 /** 14 * 在主函数中创建Frame类实例 15 * 启动该应用。 16 */ 17 public static void main(String[] args) { 18 EventQueue.invokeLater(new Runnable() { 19 public void run() { //启动窗口 20 try { 21 FrameDemo frame = new FrameDemo(); //窗体 22 frame.setVisible(true); //设置窗体可见 23 } catch (Exception e) { 24 e.printStackTrace(); 25 } 26 } 27 }); 28 } 29 30 /** 31 * 在本类构造函数中对组件进行初始化 32 * 创建窗体。 33 */ 34 public FrameDemo() { 35 this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //关闭窗体时结束本进程 36 this.setBounds(100, 100, 450, 300); //设置窗体大小位置 37 contentPane = new JPanel(); //创建面板 38 contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); //设置边框 39 contentPane.setLayout(new BorderLayout(0, 0)); //设置布局 40 this.setContentPane(contentPane); //将面板添加到窗体中 41 42 button = new JButton("按钮"); //按钮 43 contentPane.add(button, BorderLayout.CENTER); //将按钮添加到面板contentPane中 44 } 45 46 }
执行结果:
其中,FrameDemo类继承了Frame(窗体)类,在主函数中被实例化为Frame对象frame,此时,默认的窗体是不可见的,须对其进行如下操作:
frame.setVisible(true); //设置窗体可见
(设置Visible属性为true)
才能将窗体显示出来
另外,这段代码很关键:
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//关闭窗体时结束本进程
如果没有这行代码,会出现点击关闭按钮后,窗体虽然被销毁,但是程序进程依然存在,浪费资源的问题。