创建JFrame窗口 内容.docx

上传人:b****3 文档编号:6956785 上传时间:2023-05-10 格式:DOCX 页数:19 大小:144.85KB
下载 相关 举报
创建JFrame窗口 内容.docx_第1页
第1页 / 共19页
创建JFrame窗口 内容.docx_第2页
第2页 / 共19页
创建JFrame窗口 内容.docx_第3页
第3页 / 共19页
创建JFrame窗口 内容.docx_第4页
第4页 / 共19页
创建JFrame窗口 内容.docx_第5页
第5页 / 共19页
创建JFrame窗口 内容.docx_第6页
第6页 / 共19页
创建JFrame窗口 内容.docx_第7页
第7页 / 共19页
创建JFrame窗口 内容.docx_第8页
第8页 / 共19页
创建JFrame窗口 内容.docx_第9页
第9页 / 共19页
创建JFrame窗口 内容.docx_第10页
第10页 / 共19页
创建JFrame窗口 内容.docx_第11页
第11页 / 共19页
创建JFrame窗口 内容.docx_第12页
第12页 / 共19页
创建JFrame窗口 内容.docx_第13页
第13页 / 共19页
创建JFrame窗口 内容.docx_第14页
第14页 / 共19页
创建JFrame窗口 内容.docx_第15页
第15页 / 共19页
创建JFrame窗口 内容.docx_第16页
第16页 / 共19页
创建JFrame窗口 内容.docx_第17页
第17页 / 共19页
创建JFrame窗口 内容.docx_第18页
第18页 / 共19页
创建JFrame窗口 内容.docx_第19页
第19页 / 共19页
亲,该文档总共19页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

创建JFrame窗口 内容.docx

《创建JFrame窗口 内容.docx》由会员分享,可在线阅读,更多相关《创建JFrame窗口 内容.docx(19页珍藏版)》请在冰点文库上搜索。

创建JFrame窗口 内容.docx

创建JFrame窗口内容

创建JFrame窗口

一.复习提问,引入新课:

复习提问流程控制的知识点,再引入JavaGUI、Swing、JFrame等相关内容。

二.新课教学:

1.1 创建JFrame窗口

【1】创建用户登录窗口

【任务描述】

创建1个用户登录窗口,具体要求如下:

(1)设置窗口风格为Windows风格。

(2)设置窗口标题为“用户登录”。

(3)设置窗口大小的宽度为300,高度为150。

(4)设置窗口图标为QQ1.gif。

(5)控制窗口位于屏幕中心位置。

(6)控制窗口移到最前。

(7)设置窗口可见。

(8)设置关闭行为:

当窗口关闭时,隐藏并处理该窗口

【任务实现】

在NetBeans集成开发环境中创建项目Unit04,在项目Unit04中创建类Java4_1,在该类中输入程序代码。

【程序运行】

程序Java4_1.java的运行结果如图1所示。

图1 程序Java4_1.java的运行结果

1.2 在JFrame窗口中添加组件

【任务2】在用户登录窗口中添加JLabel组件

【任务描述】

创建1个用户登录窗口,创建1个标签对象,将标签添加到窗口容器中。

【任务实现】

在项目Unit04中创建类Java4_2,在该类中输入程序代码。

【任务2】的程序代码

importjava.awt.Container;

importjavax.swing.*;

publicclassJava4_2extendsJFrame{

JLabellblUserName;

publicJava4_2(){

this.setTitle("用户登录");//设置窗口标题

lblUserName=newJLabel("用户名");//创建标签对象

ContainerobjContainer=this.getContentPane();//获取窗口容器

objContainer.add(lblUserName);//将标签添加到窗口容器中

this.setSize(300,150);//设置窗口大小

this.setVisible(true);//设置窗口可见

}

publicstaticvoidmain(String[]args){

newJava4_2();

}

}

【程序运行】

程序Java4_2.java的运行结果如图2所示。

图2 程序Java4_2.java的运行结果

1.3 合理布局容器中的组件

【任务3】运用手工布局方式布局用户登录窗口中的组件

【任务描述】

创建1个用户登录窗口,在该窗口容器中添加4个标签对象、1个文本字段组件、1个口令字段组件和2个按钮组件,运用手工布局方式布局窗口中的组件和设置组件的大小。

【知识必备】

Java为了实现跨平台的特性并且获得动态的布局效果,将容器内所有组件安排给一个“布局管理器”负责管理,将组件的排列顺序、大小、位置等功能授权给对应的容器布局管理器来管理。

(1)流式布局(FlowLayou)

使用流式布局时,组件从左上角开始,按从左到右、从上到下的方式排列。

这种布局方式在默认情况下,组件居中,间隙为5像素,它是面板和Applet的默认布局方式。

(2)边界布局(BorderLayout)

使用边界布局时,组件被置于容器的东、南、西、北、中的位置。

这种布局方式是JFrame容器、JWindow窗口和JDialog对话框等对象的默认布局方式。

(3)网格布局(GridLayout)

使用网格布局时,将容器区域划分为一个矩形网格,组件按行和列排列。

当所有的组件大小相同时,可以使用网格布局。

网格布局以行为基准,按行优先顺序排列,在组件数目多时自动扩展列,在组件数目少时自动收缩列,行数始终不变。

(4)卡片布局(CardLayout)

使用卡片布局时,组件像卡片一样排列,多个组件拥有同一个显示区域,但同一时刻只能显示一个组件。

(5)网格袋布局(GridBagLayout)

网格袋布局与网格布局类似,也在网格中定位组件,不同的是,它不显式规定网格中的行数和列数,而是根据它布局的组件的约束条件确定行数和列数,并且允许组件跨越多个网格单元。

【任务实现】

在项目Unit04中创建类Java4_3,在该类中输入程序代码。

【程序运行】

程序Java4_3.java的运行结果如图4所示。

图4 程序Java4_3.java的运行结果

1.4 事件监听与使用对话框

【任务4】响应动作事件与使用对话框

【任务描述】

参考程序Java4_3_2.java创建了1个用户登录窗口Java4_4,该窗体类继承自JFrame,实现ActionListener监听接口。

在窗体类的构造方法中注册【取消】按钮btnCancel的动作事件监听者为当前对象。

编写动作事件处理方法actionPerformed()的程序代码响应用户的单击,代码中使用对话框输出提示信息。

【知识必备】

1.动作事件

Java处理事件涉及几个重要的概念:

事件源、监听者、事件接口。

(1)事件源

能够产生事件的对象称为事件源,例如按钮、文本框、菜单等,鼠标或键盘在事件源上操作将产生事件,不同的事件源会产生不同的事件,例如单击按钮将产生动作事件(ActionEvent),打开窗口将产生窗口事件(WindowEvent)。

(2)监听者

实现事件响应的关键是一旦产生事件,监听者必须自动执行响应程序。

监听者是指对事件进行监听,以便对发生的事件进行处理的对象。

事件源通过调用相应的方法将某个对象注册为监听者。

每个事件源都有注册事件监听者的方法,例如,通过调用如下方法为按钮类JButton注册动作事件监听者:

按钮变量名.addActionListener(监听者);

(3)事件接口

事件接口规定了监听者需要实现的用于处理事件的方法。

一个类的对象如果能作为监听者,那么该类必须实现相应的事件接口,即必须在类体中给出该接口中所有方法的方法体。

动作事件的接口为ActionListener,该接口中只有一个方法:

publicvoidactionPerformed(ActionEvente),该方法就是响应单击按钮事件的方法。

2.鼠标事件

鼠标动作所引起的事件称为鼠标事件。

鼠标事件的事件源一般为容器。

当鼠标按下、释放、单击、进来、离开、移动、拖动时会引发鼠标事件(MouseEvent类),MouseEvent类存于java.awt.event包中。

可以通过实现java.awt.event包中的MouseListener接口和MouseMotionListener接口处理鼠标事件。

3.事件适配器

Java中提供了MouseAdapter类(鼠标适配器)和MouseMotionAdapter类(鼠标移动适配器)来处理鼠标事件,MouseAdapter类实现了MouseListener接口,MouseMotionAdapter类实现了MouseMotionListener接口,这些类称为适配器(Adapter)类。

适配器类覆盖了接口中的所有方法,但方法体都为空{},这样,通过继承适配器类实现事件响应就不必实现接口中的所有方法了,只需重写需要的方法,无关方法不用实现。

事件适配器为我们提供了一种简单的实现监听器的手段,可以适当减少程序代码的编写量。

【任务实现】

在项目Unit04中创建类Java4_4,在该类中输入程序代码。

【程序运行】

程序Java4_4.java的运行结果如图7所示。

图7 程序Java4_4.java的运行结果

单击【取消】按钮,会弹出如图8所示的【提示信息】对话框,单击【是】将退出登录,且关闭登录窗口。

图8 【提示信息】对话框

1.5 在JFrame窗体中创建与使用菜单

【任务5】为记事本窗体添加菜单

【任务描述】

(1)创建1个【我的记事本】窗口。

(2)在【我的记事本】窗口中添加1个菜单栏JMenuBar,在菜单栏容器中添加4个菜单JMenu:

【文件】、【编辑】、【格式】和【帮助】。

(3)在【文件】菜单中添加4个菜单项JMenuItem和1根分隔线,在【编辑】菜单中添加5个菜单项和1根分隔线,在【格式】菜单中添加1个复选框菜单项,在【帮助】菜单中添加1个菜单项。

(4)设置好各个菜单和菜单项的热键。

(5)设置好菜单项的快捷键。

(6)注册【退出】菜单项的动作事件监听者为当前对象。

编写动作事件处理方法actionPerformed()的程序代码响应用户的单击。

【知识必备】

菜单组件可以使窗口显示菜单选项。

Swing提供了3个层次的菜单类,最上层的菜单栏JMenuBar是存放菜单的容器。

第2层为菜单JMenu,可以直接添加到JMenuBar中创建顶层菜单,也可以作为其他JMenu菜单的子菜单。

第3层的JMenuItem为菜单项,JCheckBoxMenuItem为带复选框的菜单项,JRadioButtonMenuItem为带单选按钮的菜单项。

创建菜单时首先要使用JMenuBar建立一个菜单栏,然后使用JMenu建立菜单,每个菜单再使用JMenuItem建立菜单项。

【任务实现】

在项目Unit04中创建类Java4_5,在该类中输入程序代码。

【程序运行】

程序Java4_5.java的运行结果如图9所示。

图9 程序Java4_5.java的运行结果

在【我的记事本】窗口单击【文件】菜单弹出的下拉菜单如图10所示,单击【格式】菜单弹出的下拉菜单如图11所示。

图10菜单弹出的下拉菜单图11菜单弹出的下拉菜单

单击【文件】菜单的【退出】命令,即可退出【我的记事本】。

1.6 在JFrame窗体中创建与使用快捷菜单

【任务6】为记事本窗体添加快捷菜单

【任务描述】

(1)创建1个【我的记事本】窗口。

(2)在【我的记事本】窗口中添加1个快捷菜单栏JPopupMenu,在快捷菜单栏容器中添加1个菜单JMenu【文件】、3个单选按钮菜单项和1个菜单项,【文件】菜单包含3个下级菜单项。

(3)设置好菜单项的快捷键。

(4)注册快捷菜单中【退出】菜单项的动作事件监听者为当前对象。

编写动作事件处理方法actionPerformed()的程序代码响应用户的单击。

(5)继承适配器MouseAdapter创建内部类,扩展MouseAdapter类,用来响应鼠标事件弹出快捷菜单。

【知识必备】

JPopupMenu快捷菜单是一种特别形式的Menu,其性质与Menu基本一致,但是JPopupMenu并不固定在窗口中的固定位置,而是由鼠标和系统判断决定其位置。

JPopupMenu的构造方法如下所示。

①JPopupMenu();

②JPopupMenu(Stringtext);

其中参数text用于指定弹出快捷菜单的文本内容。

弹出式快捷菜单一般通过鼠标事件实现,示例代码如下所示。

publicvoidmouseReleased(MouseEvente){

if(e.isPopupTrigger()){

popupMenu.show(e.getComponent(),e.getX(),e.getY());

}

}

【任务实现】

在项目Unit04中创建类Java4_6,在该类中输入程序代码。

【程序运行】

程序Java4_6.java的运行成功后,先调整多行文本框的尺寸,使其进入编辑状态,在多行文本框中单击鼠标右键,然后在弹出的快捷菜单中选择【复制】单选按钮。

再一次在多行文本框中单击鼠标右键,在弹出的快捷菜单中指向【文件】级联菜单项【新建】,如图12所示。

图12 程序Java4_6.java的运行结果

1.7 在JFrame窗体中创建与使用工具栏

【任务7】为记事本窗体添加工具栏

【任务描述】

(1)创建1个【我的记事本】窗口。

(2)在【我的记事本】窗口中添加1个工具栏JToolBar,在工具栏容器中添加6个按钮JButton:

【新建】、【打开】、【保存】、【复制】、【剪切】、【粘贴】和【退出】、2根分隔线。

要求鼠标移到按钮上时出现边框.

(3)注册工具栏按钮【新建】和【退出】的动作事件监听者为当前对象。

编写动作事件处理方法actionPerformed()的程序代码响应用户的单击。

【知识必备】

使用JToolBar类创建一个工具栏对象,然后使用add()方法将按钮添加到工具栏中即可。

JToolBar类的构造方法如下所示。

①JToolBar();

②JToolBar(Stringtext);

③JToolBar(intorientation);

④JToolBar(Stringtext,intorientation);

其中参数text用于设置工具按钮的文本内容,参数orientation用于设置工具按钮的位置。

【任务实现】

在项目Unit04中创建类Java4_7,在该类中输入程序代码。

【程序运行】

运行程序Java4_7.java,先调整多行文本框的尺寸,使其进入编辑状态,将鼠标指针指向工具按钮显示对应的提示信息,这里指向【新建】按钮

,显示“新建文件”的提示信息,如图13所示。

图13 程序Java4_7.java的运行结果

单击工具栏中的【新建】按钮

,在多行文本框中添加“新建一个文件”的文本内容,如图14所示。

单击工具栏中的【退出】按钮则会关闭“我的记事本”,退出程序运行状态。

图14在多行文本框中添加“新建一个文件”的文本内容

1.8 在可视化环境中设计窗口与添加组件

【任务8】可视化设计用户登录程序

【任务描述】

在NetBeansIDE可视化设计环境中创建如图15所示的【用户登录】窗口,在“用户名”文本字段域中输入正确的用户名,在“密码”口令字段域中输入正确的密码,然后单击【登录】按钮则会弹出“成功登录系统”的提示信息对话框,否则会弹出“用户名有误”或者“密码不正确”的提示信息对话框。

单击【取消】按钮会弹出一个供用户做出选择的对话框。

图15 【用户登录】窗口

【知识必备】

1.初识包

包是类和接口的集合,或者说包是类和接口的容器,它将一组类或接口集中到一起,在物理上包被转换成一个文件夹,包中还可以再有包,形成一种层次结构。

2.使用package创建包

创建包就是将类与接口放入指定的包中,创建包通过在类和接口的源文件中使用package语句实现。

声明包的语句格式如下所示。

package包名称1[.包名称2…];

例如:

packagepackage4_8;

3.Java中常用的包

Java本身提供了以下几个常用的包:

(1)java..lang包。

(2)java.io包。

(3)java.nio包。

(4)java.util包。

(5)包。

(7)java.awt。

(8)java.awt.event。

(9)java.applet。

(10)javax.servlet。

4.使用import导入包中的类

(1)从包中导入指定类的语法格式如下:

import包名称.类名

例如:

importjava.util.Calendar;

包名称对应于文件夹名称,类名称指明所要导入的类,包名称可以包含多个层次,形式如“父包名称1.子包名称2”所示。

(2)从包中导入该包全部类的语法格式如下:

import包名称.*

例如:

importjavax.swing.*;

“*”表示引入该包中的所有类、接口和异常等。

【任务实现】

1.在NetBeans集成开发环境中创建Java包

在NetBeans集成开发环境的【项目】窗口中右键单击Java项目Unit04,在弹出的快捷菜单中选择【新建】-【Java包…】命令。

弹出【NewJava包】对话框,在该对话框的“包名”文本框中输入包的名称,这里输入“package4_8”,然后单击【完成】按钮即可完成包的创建。

2.创建JFrame窗体Java4_8

在Java应用程序项目Unit04中右键单击包名称“package4_8”,在弹出的快捷菜单中指向【新建】,然后单击菜单命令【JFrame窗体】。

弹出【NewJFrame窗体】对话框,在该对话框中“类名”文本框输入“Java4_8”,如图19所示。

然后单击【完成】按钮,完成JFrame窗体Java4_8的创建。

3.在JFrame窗体Java4_8中添加必要的组件

NetBeans集成开发环境中的【组件面板】如图20所示。

图20 NetBeansIDE集成开发环境中的【组件面板】

在【组件面板】中单击选择合适的组件,然后将鼠标指针移到窗体中,在需要添加组件的位置单击即可。

按此方法添加多个组件,且调整各个组件的位置。

窗体的设计外观如图15所示,窗体中组件的属性设置如表13所示。

表13 JFrame窗体Java4_8中组件的属性设置

组件类型

属性名称

属性值

属性名称

属性值

JLabel

变量名称

lblUserName

text

用户名

变量名称

lblPassword

text

密码

变量名称

lblImage

icon

login.gif

JTextField

变量名称

jtfUserName

text

admin

JPasswordField

变量名称

jpfPassword

text

123456

JButton

变量名称

btnLogin

text

登录

变量名称

btnCancel

text

取消

4.编写程序代码,实现程序功能

打开Java应用程序“Java4_8.java”,切换到“源”,可以发现自动添加了一行代码“packagepackage4_8;”,表示程序所属的包。

(1)引入命名空间

importjavax.swing.*;

importjava.awt.*;

(2)编写构造方法Java4_8的程序代码

构造方法Java4_8的程序代码,其中语句“initComponents();”是创建JFrame窗体时系统自动生成的。

程序代码

publicJava4_8(){

initComponents();

//控制窗口启动时在屏幕中的位置

DimensionthisScreen=Toolkit.getDefaultToolkit().getScreenSize();

DimensionthisWin=this.getSize();

this.setLocation((thisScreen.width-thisWin.width)/2,

(thisScreen.height-thisWin.height)/2);

}

(3)编写事件过程btnLoginActionPerformed的程序代码

在窗口的设计状态,双击【登录】按钮,切换到【源】窗口,进入事件过程btnLoginActionPerformed的编辑区域,此时【源】窗口会显示源代码编辑工具栏。

接着在事件过程btnLoginActionPerformed内部输入程序代码,其主要功能是实现用户登录功能。

在NetBeansIDE集成开发环境中的【属性】窗口,切换到“事件”选项卡,如图23所示。

图23 【属性】窗口的“事件”选项卡

(4)编写事件过程btnCancelMouseClicked的程序代码

在窗口的编辑状态,右键单击【取消】按钮,在弹出的快捷菜单中依次指向【事件】→【Mouse】,单击命令【mouseClicked】,切换“源”,进入事件过程btnCancelMouseClicked的编辑区域,输入程序代码。

其主要功能是实现关闭窗口和退出程序。

事件过程btnCancelMouseClicked的程序代码

privatevoidbtnCancelMouseClicked(java.awt.event.MouseEventevt){

if(evt.getSource()==btnCancel){

intn=JOptionPane.showConfirmDialog(null,//所属窗口

"你选择了退出登录,是否真的退出?

",//对话框提示信息

"提示信息",//对话框标题

JOptionPane.YES_NO_OPTION//按钮类型

);

if(n==JOptionPane.YES_OPTION){

dispose();//关闭窗口

System.exit(0);//退出程序

}

}

}

【程序运行】

程序Java4_8.java的运行结果如图25所示,如果单击【登录】按钮弹出如图26所示的【消息】对话框,如果单击【取消】按钮弹出如图27所示的【提示信息】对话框。

图25 程序Java4_8.java的运行结果

    

图26 【消息】对话框    图27 【提示信息】对话框

1.9 应用JTable组件设计JavaGUI程序

【任务9】可视化设计购物车商品管理程序

【任务描述】

在NetBeansIDE可视化设计环境中创建如图28所示的“购物车商品管理”窗口,该窗口运行时,在JTable组件中显示商品数据,包括商品编码、商品名称、价格和数量4列。

在JTable组件中单击某一行,在该组件的下方将显示对应的商品编码,如果单击【删除】按钮,将从JTable组件中删除对应的行。

在窗口下方的商品编码文本字段框、商品名称文本字段框、商品价格文本字段框和数量文本字段框中分别输入相应的数据,然后单击【添加】按钮,将新的商品数据添加到JTable组件的商品数据表中。

单击【清空】按钮将会清空JTable组件中的所有商品数据行。

图28 “购物车商品管理”窗口

【知识必备】

JTable(表)组件以行和列的形式显示数据,允许对表格中的数据进行编辑。

使用表格时,首先生成一个TableModel类的对象表示该数据,然后以该TableModel对象作为参数生成JTable类的对象,并将TableModel对象中的数据以表格形式显示出来。

【任务实现】

1.在NetBeans集成开发环境中创建Java包

在Java项目Unit04中创建包“package4_9”。

2.创建JFrame窗体

在Java应用程序项目Unit04的package4_9包中创建JFrame窗体Java4_9。

3.在JFrame窗体Java4_9中添加必要的组件

窗体Java4_9的设计外观如图28所示,窗体中组件的属性设置如表17所示。

表17 JFrame窗体Java4_9中组件的属性设置

组件类型

属性名称

属性值

属性名称

属性值

JTable

变量名称

jTableGoodsInfo

model

[TableModel]

JButton

变量名称

jbtnAdd

text

添加

变量名称

jbtnDelete

text

删除

变量名称

jbtnClear

text

清空

JLabel

变量名称

jlblPrompt

text

你选择的商品编码是:

变量名称

jlblIContent

text

jLabel2

变量名称

jlblGoodsCode

text

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2