GUI(十)
来源:互联网 发布:2017免费下载农村淘宝 编辑:程序博客网 时间:2024/05/23 00:38
1.什么是GUI,GUI和CLI有什么区别?
GUI( Graphical user interface,图形用户接口):用类似windows图形界面的方式完成与用户交互;
CLI(Command line User Interface ,命令行用户接口):需要通过用户通过命令和计算机交互的方式;比如常用的DOS环境;
2.java中是如何实现GUI的?
通过java.awt(Abstract Window ToolKit ,抽象窗口工具包)和javax.swing两个包;
Java.awt是基于具体的操作系统的,它调用系统底部的方法,属于重量级组件,可移植性差;
Javax.swing是在java.awt发展起来的,完全由java实现,属于轻量级组件,可移植性好;
3.布局管理器有哪些?
流式布局管理器:FlowLayout(从左到右,从上到下),Panel默认的布局管理器
网格布局管理器:GridLayout(按照)
绝对布局管理器:边界布局管理器,BorderLayout(东西南北中),Frame默认的布局管理器
卡片布局管理器:CardLayout,用来布局选项卡;
网格包布局管理器:GridBagLayout,不规则的矩形,M 通过坐标来实现布局;
4.创建窗体的基本步骤:
(1)创建基础窗体Frame;
(2)设置基础窗体的布局,大小,位置;
(3)创建其它组件;
(4)为各组件设置添加监听器;
(5)把各组件添加到窗体;
(6)设置窗体的可见度;
一个较完整的案例:
class Demo{ public static void main(String[] args) { JFrame f = new JFrame();//创建顶层容器 f.setBounds(300,200,500,300);//设置窗体的位置大小 f.setLayout(new FlowLayout());//设置布局管理器 JButton but = new JButton("按钮");//按钮组件 f.add(but);//给窗体添加按钮 //给窗体添加窗体监听器 f.addWindowListener(new WindowAdapter() { public void windowClosing(WindowEvent e) { System.exit(0); } }); //让窗体可见 f.setVisible(true); }
5.事件监听机制
监听器注册到事件源--->动作作用于事件源--->触发事件--->事件交给监听器处理
(1)事件源:组件,如按钮;
(2)动作:如点击按钮的动作;
(3)事件:描述发生了什么事,这件事在谁的身上发生等;
(4)监听器:封装了可能触发某个事件的所有动作的处理方式;
6.创建监听器的方式:
(1)一般使用匿名内部类的方式;
(2)实现监听器接口或者继承适配器;
7.监听器的种类:
(1) ActionListener对应事件:ActionEvent
小插曲:M 对于此监听器,对于不同的组件监听不同的动作,比如对于文本框,只有按下回车键时才会触发此监听器;
(2) MouseListener 适配器:MouseAdapter 对应事件:MouseEvent
(3) WindowListener 适配器:WindowAdapter对应事件:WindowEvent
(4) KeyListener 适配器:KeyAdapter 对应事件:KeyEvent
8.常用组件:
容器组件:
(1)JFrame:窗体,是一个顶层容器,在一个窗体中只可以有一个顶层容器
(2)JPanel:面板(往JFrame上添加),也是一个容器,它的上面可以添加JPanel或者其它组件;
(3)Dialog:对话框,它必须属于某个窗体
Dialog(Frame owner, String title, boolean modal)
Dialog的模式:
true的话对话框依附于窗体,不取消Dialog不可以操作窗体,
false的话,不取消Dialog可以操作窗体!
M :取消dialog即让dialog不可见;
(4)MenuBar:菜单条,可以添加菜单,菜单条通过JFrame.setMenuBar添加到窗体中
(5)Menu:菜单,可以添加菜单项,也可以添加子菜单作为子菜单
非容器组件:
(1)JButton:按钮
(2)JTextField:文本框
(3)JTextArea:文本域
(4)JCheckBox:多选框
(5)MenuItem:菜单项
9.特殊组件:文件对话框FileDialog
(1)打开文件对话框
openDia = new FileDialog(f, "打开", FileDialog.LOAD);//加载
openDia.setVisible(true);//让对话框出现
openDia.getDirectory();//获取选择的目录
openDia.getFile();//获取选择的文件名
(2)保存文件对话框
saveDia = new FileDialog(f, "保存", FileDialog.SAVE);//保存
saveDia.setVisible(true);//打开保存文件对话框,只有第一次保存时才打开,以后每次不打开,而是直接保存
saveDia.getDirectory();//获取保存的目录
saveDia.getFile();//获取保存的文件名(在获取目录和文件之后,文件并不存在,需要在程序里根据目录和文件名创建文件,然后把数据写入文件)
- GUI(十)
- 【Unity 3D】学习笔记十:GUI Skin(图形用户界面皮肤)
- Rviz教程(十):Librviz: Incorporating RViz into a Custom GUI
- Qt之GUI学习笔记(十)----QFileDialog
- java学习第二十三天之GUI
- QT之GUI学习笔记(二十)---反走样
- GUI经验总结(待续)
- AutoHotkey GUI (界面)
- Python GUI (Tkinter)
- java图形界面(GUI)
- GUI图形界面(2)
- GUI (图形界面)知识点
- GUI(图形用户界面)
- GUI(图形用户界面)
- GUI(图形用户界面)
- Java基础(GUI)
- 图形用户界面(GUI)
- GUI(8.14)
- iOS开发(10)UISegmentedControl
- NY86 找球号(一)
- C++ 析构函数 为何一般定义为虚函数
- MySQL游标循环
- Android fill_parent、wrap_content和match_parent的区别
- GUI(十)
- 将截断字符串或二进制数据。语句已终止……”问题的解决
- Gallery 实现图片定时无限循环切换
- HTTP详解
- 黑马程序员_OC基础03_类的方法及self关键字
- 树莓派学习笔记——索引博文
- C++对象的内存分布和虚函数表
- 微信易信来往,飞信何去何从
- 如花美眷,似水流年。