Java基础 图形用户界面(一)
Java提供了awt和swing包用于GUI(图形用户界面)的开发
概念
Java中构成图形用户界面的各种元素称为组件Component;组件分为容器类和非容器类组件
- 组件类(Component):抽象类,组件一般放在某个容器中;组件中不能再放置其他组件
- 容器类(Container):组件类的子类,容器本身也是组件;可在其中放置其他容器或组件
容器一定是组件,组件不一定是容器
创建窗体
JFrame:窗体容器
- 带边框、标题栏、菜单栏和窗口缩放功能按钮的窗口
即图形用户界面最底层的框架
面板
JPanel类
页面设计时,将用户界面分成若干区域,每个区域使用一个面板,将所有组件存放在不同面板中,实现窗口内容结构化,便于管理,更换和调试。
在底层框架之上,进行窗口的划分
组件
组件是界面的基本元素,是软件和用户之间的交流要素。常用组件包括:
-
按钮组件
JButton(按钮)
-
选择组件
JRadioButton(单选按钮)
JCheckBox(复选框)
JComBox(选择框)
JList(列表框)
-
文本组件
JLabel(标签)
JTextField(文本框)
JPasswordField(密码框)
JTextArea(文本域)
创建
一般步骤
- 创建窗体;
- 添加面板;
- 设置布局;
- 添加组件;
代码
import javax.swing.*;
import java.awt.*;
class LoginFrame extends JFrame{
//创建所需元素
private JLabel lab1;
private JLabel lab2; //标签
private JTextField textField; //文本框
private JPasswordField passwordField;//密码框
private JPanel jp;//面板
private JButton but1,but2;//按钮
private JTextArea ta = new JTextArea(10,30);//文本域
public LoginFrame(){
//继承父类构造方法
super("欢迎登陆");//窗口名称
setBounds(300,300,500,400);//设置位置及大小
setLayout(null);//取消默认布局
jp = new JPanel();//创建面板
jp.setSize(500,400);//设置面板大小
jp.setLocation(0,20);//设置面板位置
//创建容器
Container container = this.getContentPane();
//将面板添加到容器
container.add(jp);
jp.setLayout(new FlowLayout());
//设置组件
lab1 = new JLabel("用户名");
lab2 = new JLabel(" 密码 ");
textField = new JTextField(35);
passwordField = new JPasswordField(35);
but1 = new JButton("登陆");
but2 = new JButton("推出");
//按顺序添加
jp.add(lab1);
jp.add(textField);
jp.add(lab2);
jp.add(passwordField);
jp.add(but1);
jp.add(but2);
jp.add(ta);
//菜单栏
MenuBar menuBar = new MenuBar();
Menu m1 = new Menu("文件");
Menu m2 = new Menu("编辑");
MenuItem m1_1 = m1.add(new MenuItem("新建"));
MenuItem m1_2 = m1.add(new MenuItem("退出"));
menuBar.add(m1);
menuBar.add(m2);
m1.add(m1_1);
m1.add(m1_2);
setMenuBar(menuBar);
setVisible(true);//可视化
setDefaultCloseOperation(EXIT_ON_CLOSE);//关闭按钮
}
}
public class LoginView {
public static void main(String[] args) {
LoginFrame frame = new LoginFrame();
}
}
效果
以上为本人学习Java时的一些笔记以及自己的理解
如有不足之处请大家指正