GUI-lesson1
本帖最后由 愷龍 于 2021-9-19 10:54 编辑什么是 GUI 编程?
· GUI: 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面,· 图形用户界面是一种人与计算机通信的界面显示格式,允许用户使用鼠标等输入设备操纵屏幕上的图标或菜单选项,以选择命令、调用文件、启动程序或执行其它一些日常任务。· Window 操作系统就是一个图形用户界面 (GUI) 操作系统我们平时操作的一些应用程序 比如说 QQ 微信的登陆页面 QQ 微信的聊天页面 英雄联盟的登陆页面 这些都是图形用户界面
GUI的核心以及组件
GUI 的核心:AWT 和 swing 两个 jar 包
关系:AWT 和 Swing 都是 java 中的包。
· AWT (Abstract Window Toolkit):抽象窗口工具包,早期编写图形界面应用程序的包。· Swing :为解决 AWT 存在的问题而新开发的图形界面包。Swing 是对 AWT 的改良和扩展。深度了解可参考:Java 中 AWT、Swing 与 SWT 三大 GUI 技术的原理与效率差异
GUI 的主要组成:容器 和 组件
容器:(container)
· Windows· 窗口 Frame· 面板 Panel· 弹出框 Dialog等等……
组件:(component)
[*]输入框 TextArea (多行文本)
[*]输入框 TextFiled (单行文本)
[*]按钮 Button
[*]标签 Lable
等等……
Awt
容器Frame 窗口
Frame frame=new Frame("我的第一个窗口"); //Fram类的构造方法传进一个String类型的窗口 标题
Frame 中的常用方法:
frame.setVisble() //boolean型参数调整窗口是否可视化
frame.setSize(width:int,height:int)//调整窗口的宽度和高度
frame.setLoaction(x:int,y:int) //调整初始话窗口显示的位置
frame.setBackground(Color:color) //调整窗口背景颜色需要穿进一个Color的对象
new Color(r:int,g:int,b:int) or new Color(rgb:int)//通过rgb调色调试想要的颜色
//RGB色彩模式是工业界的一种颜色标准,是通过对红(R)、绿(G)、蓝(B)三个颜色通道的变化
//以及它们相互之间的叠加来得到各式各样的颜色
Color.green //绿色
Color.red //红色 public final static Color green = new Color(0, 255, 0);Color类中包含的对象 源码
//Color类中已经包含了很多 Color对象 这些对象已经调试好使用的大多数颜色,可以通过 Color. 来获取这些对象
frame.setResizable(Boolean) //设置窗口大小是否可以被调整;
add 方法:
Frame frame=new Frame("我的第一个窗口");
frame.add(Component comp,Object constraints)//向Frame中添加组件 constraints为控件的布局位置
//Component 组件 组成部分|constraints约束条件
2.1AWT 介绍
https://z3.ax1x.com/2021/08/25/hVvQjx.png
2.2 组件和容器窗口
import java.awt.*;
public class TestFrame{
public static void main(String[] args) {
Frame frame = new Frame(" 我的第一个窗口");
//设置可见性
frame.setVisible(true);
//设置窗口大小
frame.setSize(400, 400);
//设置背景颜色
frame.setBackground(Color.red);
//弹出的初始位置
frame.setLocation(200, 200);
//设置大小固定
frame.setResizable(false);
}
}
https://z3.ax1x.com/2021/08/25/hVv7aF.png
窗口无法关闭;停止 java 程序运行
多个窗口
import java.awt.*;
public class TestFrame2 {
public static void main(String[] args) {
MyFrame myFrame1 = new MyFrame(100,100,200,200,Color.blue);
MyFrame myFrame2 = new MyFrame(300,100,200,200,Color.pink);
MyFrame myFrame3 = new MyFrame(100,300,200,200,Color.red);
MyFrame myFrame4 = new MyFrame(300,300,200,200,Color.yellow);
}
}
class MyFrame extends Frame{
static int id=0;//可能存在多个窗口,需要一个计数器来进行计数
public MyFrame(int x, int y,int w, int h, Color color){
super("MyFrame+"+(++id));
setBackground(color);
setBounds(x,y,w,h);
setVisible(true);
}
}
https://z3.ax1x.com/2021/08/25/hZPGQJ.png
窗口无法关闭;停止 java 程序运行
组件Button 按钮1.//创建按钮对象2.Button button =new Button(String : lable);//Butoon的构造方法传进一个String的值 设置按钮上显示的文本3.button.setActionCommand(String:Conmand);//设置按钮的别名 ActionCommand: 操作命令4.bu
TextField 单行输入框1.TextField t=new Textfield(int:columns);//创建一个单行文本框 columns 字符数 2.t.getText() //获取输入框文本3.t.setEchoChar(String: text) //设置输入时文本框的替换字符换成* 输入显示文字显示*https://cdn.jsdelivr.net/gh/master-of-forums/master-of-forums/public/images/patch.gif
页:
[1]