计算机软件实习记录(第一周)——Java Swing的简单学习
Swing的认识
1)Swing是一个用于开发Java应用程序用户界面的开发工具包(GUI工具包),是JAVA基础类的一部分。
2)它包括了图形用户界面(GUI)器件,如:文本框,按钮,分隔窗格和表。
Swing 组件的学习
JFrame的学习
JFrame是⼀个容器,他是各个组件的载体。``
JFrame对象的创建JFrame jf = new JFrame("Hello!");
设置窗⼝的大小jf.setSize(400,300);
设置窗口的位置jf.setLocation(550,450);
等价于jf.setBounds(550,450,400,300);
窗口位置设置于屏幕中央jf.setLocationRelativeTo(null);
窗口的关闭jf.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
显示和隐藏GUI组件jf.setVisible(true);
JDialog的简单操作
类似JFrame,但它是⼀个窗体弹出来的另外⼀个窗体
而且JDialog的关闭是使用DISPOSE_ON_CLOSE
JDialog jd = new JDialog(jf,"hello");
jd.setBounds(550,450,400,300);
jd.setVisible(true);
jd.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
JPanel的简单操作
JPanel就是一种简单的面板
JPanel jp = new JPanel(new FlowLayout());
JButton jb1 = new JButton("X");
JButton jb2 = new JButton("Y");
jp.add(jb1);//往jp里面添加按钮
jp.add(jb2);
jf.add(jp);
绝对布局
绝对布局需要明确指定每一个组件的坐标和宽高,否则不显示。
绝对布局没有特定一个布局管理器类来表示,给容器的布局管理器设置为 null,就表示使用绝对布局,即通过设置组件的坐标和宽高来布置组件。
绝对布局的建立和文本组件的添加:
JPanel panel = new JPanel(null);
JTextField text = new JTextField(20);
text.setLocation(20,10);
text.setSize(245,50);
panel.add(text);
箱式布局
使用 Box 提供的静态方法,可快速创建水平/垂直箱容器(Box),以及填充组件之间空隙的不可见组件。用水平箱和垂直箱的组合嵌套。`
Box hBox01 = Box.createHorizontalBox();//水平箱容器的建立
Box hBox02 = Box.createHorizontalBox();
Box vBox = Box.createVerticalBox();//垂直箱容器的建立
vBox.add(hBox01);
vBox.add(hBox02);
组件
按钮组件
按钮的建立与添加
JButton jb1 = new JButton("(");
jb1.setBounds(20,130,50,50);//在绝对布局下定义按钮的位置和大小
panel.add(jb1);
文本组件
文本的建立与添加
JTextField text_01 = new JTextField(20);
text_01.setBounds(20,70,245,50);
panel.add(text_01);
文本域组件
构造函数:
JTextArea(int rows, int cols); // 指定⾏ 列
JTextArea(Document doc, String text, int rows, int cols); // 指定⽂本模型 +
默认⽂字 + ⻓ + 宽
JTextArea area = new JTextArea(12, 20);
jf.add(area);
组建的尺寸和位置
JButton jb1 = new JButton("(");
jb1.setBounds(20,130,50,50);
// jb1.setSize(50,50);
// jb1.setLocation(20,130);