java中的图形界面1(J2SE入门12)
java中的图形界面
GUI,图形化的用户接口,为了人机交互使用的。
构造图形界面的步骤
1,选择一个容器
2,设置容器的布局管理器
3,向容器添加组件
4,添加事件的监听
容器(Container)用于管理其他的组件的对象,组件必须放到容器里。
JFrame,这是一个最顶层的窗体容器,所有其他的组件必须放在顶层容器里。
JDialog对话框容器,他要依附于其父组件,他不是一个顶层容器。
JPanel,他不是顶层容器,必须放在顶层容器中,任何一个容器都有add()方法,Panel面板是透明的(默认),他也是一个组件。
布局管理:对于任何一个容器类中都有setLayout()方法,用容器对象调用这个方法,来设置容器的布局管理器(LayoutManager这是一个接口,所有布局管理器都实现了这个接口)。
可用的布局管理器:
FlowLayout,流式布局管。Panel的默认布局管理就是FlowLayout。
BorderLayout,按方位进行布局管理,(North,South,East,West,Middle)不明确指定,就会默认加载在中间(Middle),add(Component comp,String place)这个方法是在指定的位置添加组件。
GridLayout,网格布局,通过行列,间距,来用网格分割,把组件放入如网格中,先行后列摆放组件。
CardLayout,卡片布局,面板重叠放置。
GridBogLayout,组件可以跨行跨列的网格布局。
注意:一定要在图形界面都其他功能都设置好之后才能设置可见性。
JButton :按钮
JTextField:单行文本域
JTextArea:多行文本区
JScrollPane:滚动窗体
JComboBox:下拉选择框
JRadioButton:单选按钮
JCheckBox:多选按钮
JList:多行列表
JLabel:标签
JPasswordField:密码输入框
JEditorPane:显示结构化文档
Border:边框
JMenuBar:菜单条
JMenu:菜单
JMenuItem:菜单项
JPopupMenu:弹出式菜单
JSlider:滑动条
JProgressBar:进度条
JTabbedPane:分层面板
JSplitPane:分隔面板
JToolBar:工具条
JFileChooser:文件选择器
JColorChooser:颜色选择器
显示对话框
JOptionPane 里面有很多静态方法可以弹出对话框
awt事件模型(观察者模式)(重点)
事件模型中,包括事件源对象,事件处理者(事件监听者对象),事件对象。
事件源和事件处理者之间建立了授权关系,也就是在事件源类中有一个事件处理者的对象作为属性,也可能是一个事件处理者的集合。
事件对象
事件源――――――――〉事件处理者
这就是事件模型的机制,也就是由事件源对象发送一个消息(事件对象),然后事件处理者调用相应的方法处理事件。
在事件监听器接口中定义的方法,都要以事件对象为参数。
一个事件源可以注册多个同类型的监听器,也可以注册多种多个事件监听器,一个事件监听器也可以为多个事件源服务。
首先了解一下什么是发消息:A,B,C三个类,分别作为A事件源,B事件处理者,C事件对象。在A类中有一个B类的属性或者是一个内容为B类对象的集合,也就是事件源和事件处理者之间的建立了授权关系,在B类需要实现一个自定义的接口,这个自定义的接口继承了EventListener,EventListener接口中没有定义任何方法,这只是一个标记接口。实现在自定义接口中定义好的用于事件处理的方法,C类要继承EventObject类。这些方法是以事件对象为参数的b(C c),而后在A类a(C c)方法中使用B类的对象调用B类中的b(C c)方法,并把事件对象作为参数,并在main方法中用A类的对象调用了a(c)方法,这也就叫做A类对象给B类发送了消息。
也就是说事件源对象间接调用了事件监听器的方法,并以事件对象为实参传到事件监听器的方法中,要就叫事件源给事件监听器的方法发了一个消息(事件对象)。
作者:BuildNewApp
出处:http://syxchina.cnblogs.com、 BuildNewApp.com
本文版权归作者、博客园和百度空间共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则作者会诅咒你的。
如果您阅读了我的文章并觉得有价值请点击此处,谢谢您的肯定1。