#1.Gui的概述
(Graphical User Interface)即图形用户界面,它能使应用程序更加美观
#2.Swing概述
Swing是java图形界面的类 纯java组件 ,Swing大部分组件在javax.swing包,组件丰富
#3.容器组件
组件:
java图形用户界面基本组成是组件,是以图形化方式显示在屏幕上与用户交互的对象
不可独立显示
容器:
可以容纳多个组件,通过调用容器add()方法添加组件 窗口(Frame)和面板(Panel是常用的两个容器
#4.Gui方法应用
1.创建窗口的方法:
方法1:创建JFrame类
import javax.swing.*;
public class Gui {
public static void main(String[] args) {
JFrame jFrame=new JFrame();//创建窗口
jFrame.setVisible(true);//窗口可视化
}
}
方法2:继承JFrame
import javax.swing.*;
public class Gui extends JFrame {
public static void main(String[] args) {
new Gui().setVisible(true);//创建窗口,窗口可视化
}
}
2.常用方法
import javax.swing.;
import java.awt.;
public class Gui {
public static void main(String[] args) {
JFrame jFrame=new JFrame();//创建窗口,自带一个面板
jFrame.setTitle(“Gui窗口”);//标题
jFrame.setSize(300,200);//窗口大小
jFrame.setLocationRelativeTo(null);//设置组件的相对位置,为null,默认水平,垂直居中
jFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//设置关闭窗口
jFrame.setResizable(false);//禁止调整窗口大小
JPanel jPanel=new JPanel();//创建面板默认流式布局
jFrame.add(jPanel);//将面板组件添加到窗口
jPanel.setBackground(Color.blue);//将面板背景颜色调为蓝色
JButton jButton=new JButton(“gui”);//添加按钮,按钮名为gui
jButton.setToolTipText(“gui”);//组件上悬停提示
jPanel.add(jButton);//在面板上添加按钮组件
jButton.setBackground(Color.green);//按钮背景颜色调为绿色
jFrame.setVisible(true);//显示窗口
}
}
3.布局管理器
FlowLayout流式布局
JPanel jPanel=new JPanel(new FlowLayout(FlowLayout.LEFT,20,10));
//创建面板,流式布局左对齐左右间距20上下间距10
BorderLayout边界布局
JPanel jPanel=new JPanel(new BorderLayout());
//创建面板,流式布局边界布局
jFrame.add(jPanel);//将面板组件添加到窗口
JButton jButton1=new JButton("deng");//创建按钮
JButton jButton2=new JButton("deng");
JButton jButton3=new JButton("deng");
JButton jButton4=new JButton("deng");
JButton jButton5=new JButton("deng");
jPanel.add(jButton1,BorderLayout.NORTH);//按钮放北区
jPanel.add(jButton2,BorderLayout.SOUTH);//按钮放南区
jPanel.add(jButton3,BorderLayout.WEST);//按钮放左区
jPanel.add(jButton4,BorderLayout.EAST);//按钮放右区
jPanel.add(jButton5);//默认按钮放中间
注意:如果没写位置默只都为中间并且只展示中间部分
GridLayout网格布局
JPanel jPanel=new JPanel(new GridLayout(2,2));
//创建面板,网格布局边界布局2*2表格
jFrame.add(jPanel);//将面板组件添加到窗口
JButton jButton1=new JButton("deng");//创建按钮
JButton jButton2=new JButton("deng");
JButton jButton3=new JButton("deng");
JButton jButton4=new JButton("deng");
jPanel.add(jButton1);
jPanel.add(jButton2);
jPanel.add(jButton3);
jPanel.add(jButton4);
4.常用组件
标签
JLabel jLabel=new JLabel();//创建空(文本,图像)标签
jLabel.setForeground(Color.BLUE);
//设置字体颜色为蓝色
jLabel.setFont(new Font("楷体",Font.BOLD,20));
//设置字体格式
文本框
JTextField jTextField=new JTextField(15);
//单行文本输入框宽度15
jPanel.add(jTextField);
//将单行文本输入框添加面板代码片
JPasswordField jPasswordField=new JPasswordField(15);
//单行密码输入框宽度15
jPanel.add(jPasswordField);
//将单行密码输入框添加面板
JTextArea jTextArea=new JTextArea(10,20);
//创建多行文本框
jTextArea.setLineWrap(true);//自动换行
jTextArea.setEnabled(false);//不可编辑
JScrollPane jScrollPane=new JScrollPane(jTextArea);
//创建滚动面板,多行文本框添加创建滚动面板
jPanel.add(jScrollPane);//将滚动面板添加面板上
菜单
JMenuBar jMenuBar=new JMenuBar();//创建菜单栏
JMenu jMenu=new JMenu("文件");//创建菜单
jMenuBar.add(jMenu);//把菜单添加菜单栏
jFrame.setJMenuBar(jMenuBar);//把菜单添加窗口
JMenuItem jMenuItem=new JCheckBoxMenuItem("新建");
//创建菜单项
jMenu.add(jMenuItem);//将菜单项添加菜单上