- 1. Java课程设计——王仁彪
- 2. 1.基础知识讲解
2.基础练习
3.布置课设任务
4.撰写课设报告
5.毕业答辩检查2018/10/222课程设计安排
- 3. 课堂表现,包括纪律、出勤(20%)
基础练习(20%)
课设答辩(30%)
课设报告(30%)关于你们的成绩。。。
- 4. 通过图形用户界面(Graphics User Interface,GUI),用户和程
序。 Java的java.awt包,即Java抽象窗口工具包(AWT:Abstract Window Toolkit)提供了许多用来设计GUI的组件类。
41 Java Swing概述
- 5. 2 窗口JFrame 2018/10/225 Java提供的JFrame类的实例是一个底层容器,即通常所称的窗口。其他组件必须被添加到底层容器中,以便借助这个地层容器和操作系统进行信息交互。
JFrame类是Container类的间接子类。当需要一个窗口时,可使用JFrame或其子类创建一个对象。
- 6. 3 JFrame常用方法 2018/10/226JFrame() 创建一个无标题的窗口。
JFrame(String s) 创建标题为s的窗口。
public void setVisible(boolean b) 设置窗口是否可见,窗口默认是不可见的。
public void setDefaultCloseOperation(int operation) 该方法用来设置单击窗体右上角的关闭图标后,程序会做出怎样的处理。
练习1 让咱们自己拥有一个可爱的窗体吧!
- 7. 菜单是多数窗口程序重要组成部分,创建菜单通常需要菜单条Jmenubar(菜单条)、JMenu(菜单)、
JMenuItem(菜单项)三个组件配合完成,三者关系如下:4 创建菜单菜单条菜单菜单项
- 8. 创建菜单条
JMenuBar menubr = new JMenuBar( );
创建菜单
JMenu menuFile = new JMenu( );
创建菜单项
JMenuItem openItem = new JMenuItem( );
通常需要往窗口程序中加入菜单条,用顶层容器的方法将
菜单条加入容器中,同时往菜单条中加入菜单,菜单中加
入菜单项。8菜单创建方法建一个属于自己的菜单吧
- 9. 文本框:由JComponent的子类JTextField创建
JTextField textField = new JTextField(int size );
密码框:由Jcomponent的子类JPasswordField
文本区:由JComponent的子类JTexArea创建
按钮:由JComponent的子类JButton类创建
JButton button = Jbutton(String name);
标签:由JComponent的子类JLabel类用创建
Jlabel label = new Jlabel(String name);
还有下拉列表、密码框、单选按钮、表格等等。5 其它常用组件
- 10. 完成下面练习登录界面简单记事本相信自己哦!
- 11. 容器是一类能容纳其它组件的特殊组件,java的GUI程序就是通过向容器内添加组件完成的,组件需要被添加到容器中才能被显示。
最外面的容器是顶层容器(JFrame ,JDialog),里面放的是中间容器(JPanel),所有原子组件(Jbutton , JTextField)
都被添加到中间容器中。6 顶层容器与隶属层次顶层容器中间容器原子组件
- 12. 在把组件添加到容器的过程中,需要控制组件在容器
中的显示位置时,该肿么办呢?
Java通过java.awt包中的布局管理器来实现,当把组件添加到容器中时,设置容器的布局,从而确定组件的位置,常用的布局方式有流式布局(FlowLayout)、边界布局(BorderLayout)、网格布局(GridLayout)7 布局管理器
- 13. 流式布局——FlowLayout(默认布局)
按照从左到右的流动顺序布置swing组件,当一行排不下时,就另起一行继续布置,直到所有组件布置完成。
方法如下:
创建布局对象
FlowLayout flow=new FlowLayout();
容器con使用布局对象
con.setLayout(flow);
con可以使用Container类提供的add方法将组件顺序地添
加到容器中;
7 布局管理器试一下吧
- 14. 边界布局——BorderLayout(边界布局)
容器被分为5个区域:东(east) 、西(west) 、南(south) 、北(north) 、中(center)
方法如下:
JPanel p = new Jpanel( );
p.setLayout(new BorderLayout( ));
p.add(new Button(“ok”),BorderLayout.SOUTH);
7 布局管理器试一下吧
- 15. 网格布局——GridLayout(边界布局)
按照网格形式布局的布局管理器,容器的矩形区域被分成等高和等宽的行和列,每个组件占用其中一个小矩形区域。
方法如下:
JPanel p = new Jpanel( );
p.setLayout(new GridLayout(int rows, int cols))
p.add(new Button(“ok”));
7 布局管理器试一下吧
- 16. 当用户在文本框中键入文本后按回车键、单击按钮、在一个下拉式列表表中选择一个条目等操作时,都发生界面事件。
事件源 :能够产生事件的对象都可以成为事件源 .
监视器 :事件源通过调用相应的方法将某个对象注册为自己的监视器。对于文本框,这个方法是:addActionListener(监视器);
事件源注册监视器之后,相应的操作就会导致相应的事件的发生,并通知监视器,监视器就会作出相应的处理。
8 处理事件
- 17. 2018/10/22173.处理事件的接口:
监视器负责处理事件源发生的事件。监视器是一个对象,为了处理事件源发生的事件,监视器这个对象会自动调用一个方法来处理事件。 Java规定:为了让监视器这个对象能对事件源发生的事件进行处理,创建该监视器对象的类必须声明实现相应的接口,那么当事件源发生事件时,监视器就自动调用被类重写的某个接口方法。事件处理模式
- 18. ActionEvent事件 1. ActionEvent事件源 :文本框、按纽、菜单项、密码框和单选按纽都可以触发ActionEvent事件,即都可以成为ActionEvent事件的事件源。
2.注册监视器: 能触发ActionEvent事件的组件使用
addActionListener(ActionListener listen)
将实现ActionListener接口的类的实例注册为事件源的监视器。
3.ActionListener接口 :
ActionListener接口在java.awt.event包中,该接口中只有一个方法:
public void actionPerformed(ActinEvent e)
事件源触发ActionEvent事件后,监视器将发现触发的ActionEvent事件,然后调用接口中的方法:actionPerformed(ActinEvent e)对发生的事件作出处理。ActionEvent类事先创建的事件对象就会传递给该方法的参数e。
4.ActionEvent类中的方法 :
public Object getSource() 调用该方法可以获取发生ActionEvent事件的事件源对象的引用。
public String getActionCommand() 调用该方法可以获取发生ActionEvent事件时,和该事件相关的一个命令字符串。
- 19. 创建一个类,并实现ActionListener接口,构造方法中
做如下实现:
创建窗体并给窗体命名
设置窗体大小,以像素为单位
创建中间容器(JPanel)和其它原子组件
组件添加动作事件
设置中间容器的布局方式,将原子组件添加到中间容器里。
判断窗口关闭执行的操作
显示整个窗体。8 创建GUI程序的过程
- 20. 完成如下计算器9 课程设计
- 21. 课程设计---布局设计c_top(content下NORTH)content(borderlayout布局)c_left
content下WEST
GridLayoutc_right
content下EAST
BorderLayoutcr_top
GridLayoutcr_bottom
GridLayout
- 22. 2018/10/2222