基础案例学习(工匠工房案例)

!143 2021-07-11 11:33:40

案例学习

一、创建第一个过程

环境设置完成后,现在可以创建第一个Java GUI应用程序。在本教材中,使用“→”作为符号从选项中选择菜单项。例如如图所示,File→New Project,这意味着从File菜单,然后选择New Project子菜单。要使用NetBeans创建你的第一个项目,可以从IDE中选择File→New Project。

当选择File→New Project时,将看到一个新项目对话框。

在图中所示的New Project窗口中,Categories部分选择Java with Maven→Java Application。然后,单击“Next”按钮,用户将看到一个New Java Application对话框如图:

New Java Application对话框将要求用户确定项目名称(Project Name)及其项目文件存放位置(Project Location)。在本例中,项目名称为HelloJava;存放位置按照自己的意愿指定,如图所示。完成所有工作后,只需单击“Finish”按钮来结束项目制作过程。

创建项目之后,下一步是通过右击HelloJava→New→JFrame Form菜单命令来创建GUI应用程序(Form窗口应用程序),如图所示。

在图中,需要确定Form窗口的类名。在本例中,创建的类名为HelloJavaForm。然后,还需要确定创建JFrame Form类的包的名称。Package下拉菜单中选择 “com.mycompany.hellojava”,若之前的步骤项目名不是“HelloJava”,则下拉菜单里面的内容和本文不一样,没关系,直接选择就是了。设置好一切后,选择“Finish”按钮结束步骤,将出现以下显示。

图中是已经添加到HelloJava项目的HelloJavaForm视图。在HelloJavaForm的设计部分中,正方形框表示已创建的Form窗口。

创建Form窗口之后,需要考虑两个部分,用户需要知道,它们是Design(设计)和Source(源代码)部分。两个部分位于创建的Form窗口的上方,如上图所示。Design部分用于设计Form窗口的外观,而Source部分用于查看已创建的类(在本例中是HelloJavaForm类)中的代码。通过单击这两个部分中的一个,用户就可以从一个部分切换到另一个部分。

要向Form窗口添加属性或控件,Java提供了一个包含窗体控件的选项板(工具箱)。此外,还有属性部分,用于设置控件的属性。在这种情况下,用户将学习如何通过添加Label控件来操作Form窗口。

1. 属性窗口

属性窗口(Properties Window)是包含在面板中的窗体或控件的一部分,用于设置窗体或控件的属性。要显示“属性窗口”可以右击特定的窗体或控件,然后选择“Properties”。另外,要显示属性窗口也可以通过选择菜单Windows→IDE Tools→Properties来实现。

如图所示是HelloJavaForm的属性窗口。在这些窗口中,可以设置窗口的标题、窗口的大小和其他各种属性。例如,在本例中,将使用“欢迎来到Java GUI的世界”设置Form窗口的标题。为此,在Form窗口的Properties窗口中选择title,然后填写所需的文本,如图所示。

图中给出窗口标题设置的过程。“Properties”窗口中的“title”部分是为窗口填写标题的位置。

要查看更改的效果,可以通过选择菜单Run→Run Project或按F6键来运行程序。但是,在运行之前,建议程序员通过选择“Run→Built Project”菜单来构建程序。这是为了确保在创建的程序中没有错误。下面是运行后的应用程序显示,如图所示。

上图显示了运行后的应用程序。从图中可以看出,Form窗口标题根据Properties窗口的指定进行了更改。

2. 面板编辑器

面板编辑器(Palette Editor)包含用于修改窗体外观的控件图标。面板编辑器中包含的控件分为几个类别,即Swing Containers、Swing Controls、Swing Menus、Swing Windows、Swing Fillers、AWT、Beans和Java Presistencn。分组是基于每个控件的使用。

上图显示了在面板编辑器中找到的控件,当创建GUI应用程序来使用这些控件时,用户可以简单地单击和拖动想要使用的控件,并将它们放到Form窗口上。与一开始就通过输入代码来实现自己的控制相比,这当然非常简单。在本例中,将尝试向HelloJavaFormForm窗口添加一个Label控件。它位于Swing Controls 类别中,该类别通常用于在GUI应用程序中显示字符串和图像。

如上图所示,从面板编辑器中拖动Label控件后,下一步是替换Label上的文本。为此,用户可以右击Label,然后选择Edit Text。此外,还可以通过Label控件的Proprties窗口替换它,然后在text部分中输入所需的文本。

在图的Properties窗口中,可以看到Label控件拥有的属性。用户可以设置背景颜色、背景颜色、文本、文本字体、文本对齐,等等。要设置标签的字体,可以在“Properties”窗口中选择“font”部分。

从图中可以看出,Label使用“华文楷体”字体,字体样式为Bold,字体大小为18。设置完字体后用鼠标拖动Label周围的小正方形来调整Label的大小,使所有的字在Label中都可见

 

二、向窗体添加控件

Java中的GUI编程涉及几个用于修改窗口外观的控件,如前一节所述,这些控件位于Palette面板编辑器窗口中。在前面的案例中,向JFrame Form添加了一个Label控件。这里有许多关于JFrame Form的基本控件还没有讨论,比如文本框、按钮、单选按钮、复选框、列表、进度条等。

现在在HelloJavaFormForm窗口中再添加一个控件,在本例中,将在Form窗口上添加一个Button按钮控件,如图所示。按钮控件是使用JButton类创建的。在这个小案例中,当单击窗体上的按钮时,程序将向用户显示一条消息。

向Form窗口添加Button控件的方法可以与添加以前的Label控件相同。要编辑一个Button的文本,可以通过在Button上右击选择Properties。从图中可以看到,按钮text被更改为“显示信息”。对于添加到窗体中的每个控件,必须做的另一件事是设置控件的变量名。要更改Button控件的名称可以通过右击Button→Change Variable Name来实现更改变量名

 

从图看出,添加的按钮变量名是ShowMessage。变量名将用于从代码中访问控件的属性。下一步是设置按钮的Event事件,该事件将在按钮被按下或单击时触发按钮执行某些操作。可以通过双击添加的按钮来创建Event,这样源代码部分就会显示IDE生成的代码。也可以在按钮上右击→Events→Action→actionPerformed。

集成开发环境IDE会自动从Design设计模式跳转到Source源代码模式,

上面的代码(其实是事件函数,先不用理解什么是“函数”)是由IDE自动生成的按钮的事件。在这个函数中将放置一些代码语句,这些代码语句将在单击按钮时执行。在本例中,当按钮单击时,该程序将通过JOptionPane消息对话框显示一条消息。为此,第一步是导入java swing。要开始手动写第一行代码了,使用下面的一行代码import导入javax.swing包(package)里面的JOptionPane类

import javax.swing.JOptionPane;

之后,所要做的就是将下面的代码添加到ShowMessage按钮事件中。请注意“小括号”、“双引号”、“分号”是英文输入法状态的英文字符。

JOptionPane.showMessageDialog(rootPane, "Hello,欢迎来到Java GUI的世界!!!");

屏幕截图 2021-07-10 222925

从图可以看出,当单击按钮时,应用程序显示消息“Hello,欢迎来到Java GUI的世界!!!”

 案例1——身份展示器

在该案例中,将尝试制作一个在Form窗口上显示某人身份的应用程序,包括姓名、地址和电话号码。只有单击“Show”按钮,身份才会出现。因此,当程序运行时,Form窗口上不显示任何标识。

1、创建名为ShowIdentity的项目

File→New Project,然后在弹出的窗口选择Java with Maven→Java Application,设置Project Name为“ShowIdentity”;

2、添加具有名称Identity的JFrame Form

在“ShowIdentity”项目上右击→New→JFrame Form,然后Class Name设置为“Identity”,Package的值从下拉菜单中选择。

3、显示身份,添加3个Label标签控件,设置每个标签用以下变量名字lblName、lblAddress、lblPhone。

从面板编辑器拖动3个Label控件放到JFrame Form窗口里面,然后分别在标签上右击→Change Variable Name来修改控件的变量名为lblName 、blAddress、lblPhone。

4、添加一个变量名为ShowButton的Button控件,然后用“Show Identity”作为该按钮控件的text文本显示值。

从面板编辑器中拖动一个Button控件到JFrame Form窗口,然后在该Button控件上右击→Change Variable Name将其变量名设置为“ShowButton”并确认。接着在该Button控件上右击→Properties,在打开的属性窗口中将text的值设置为“Show Identity”。

(1)、将IDE从Design设计模式切换到Source源代码模式;添加如下代码到public Identity()对应的大括号里面。

lblName.setVisible(false);

lblAddress.setVisible(false);

lblPhone.setVisible(false);

上面的程序代码是Identity类的构造方法中添加了3行设置标签不可见的代码,在程序运行时将首先调用该类的构造方法。

此时单击“Show Identity”按钮是没有任何反应的,因为“Show Identity”按钮还没有添加事件代码。

(2)、将IDE从Source源代码模式切换到Design设计模式,

在设计模式下双击“Show Identity”按钮或者在按钮上右击→Event→Action→actionPerformed,这将会使IDE从Design模式再次自动切换到Source模式,并且IDE自动添加了按钮事件的方法体代码。

在private void ShowButtonActionPerformed对应的大括号里面添加如下代码:

        lblName.setVisible(true);

        lblName.setText("姓名:迪丽娜扎");

        lblAddress.setVisible(true);

        lblAddress.setText("地址:北京市乌鲁木齐路八楼");

        lblPhone.setVisible(true);

        lblPhone.setText("电话:18888888888");

 案例2——文本颜色更改器

在本例中,将尝试更改添加到Form窗口中的标签的文本颜色。该程序将显示三所大学的名字。三所大学的名字将会在应用程序首次运行时出现。此外,当用户按下“Red”、“Blue”和“Green”按钮时,三所大学的文本颜色将变为红色、蓝色和绿色。

以下是创建此应用程序的步骤。

1、创建名为University的项目。

2、添加带有University名称的JFrame Form。

3、为了显示三所大学的名称,添加3个标签,使用以下名称设置标签的变量名为lblUniversity1、lblUniversity2、lblUniversity3。

4、此外,在Form窗口上添加一个用作标题的标签,并将text文本更改为“我的大学”。这个标签的变量名不需要更改,因为它只是一个描述。

5、然后,添加3个具有以下变量名称的控制按钮为RedButton、BlueButton和GreenButton。将3个按钮的text文字改为以下文字:“Red”、“Blue”、“Green”。

在本案例中,三所大学分别是清华大学(Tsinghua University)、北京大学(Beijing University)和黄河水利职业技术学院(Yellow River Conservancy Technical Institute)。要在应用程序首次运行时显示这三所大学,你只需在University类的构造函数中添加以下语句。

lblUniversity1.setText("清华大学");

lblUniversity2.setText("北京大学");

lblUniversity3.setText("Yellow River Conservancy Technical Institute ");

运行程序后,单击“Red”、“Blue”、“Green”按钮,对应的标签改变颜色的效果显示如图

任务3事件处理

事件处理是控件上的各种操作的应对方法,某一操作发生时要触发相应的代码来应对和处理该操作事件。例如,当做单击按钮操作时,就是在按钮上发生了一次单击事件,程序将通过对话框显示一条消息。事件被调用为ActionPerformed事件。

当单击“Show Message”按钮时,第94行到第99行的语句将被执行。这些语句是当单击“Show Message”按钮时将采取的操作。换句话说,event事件是一个触发控件执行特定动作的方法。

 案例3——学生姓名显示器

在本例中,将为Button和Label创建一个事件。本例将演示如何在单击按钮时显示第一个学生的名字,在单击标签时显示第二个学生的名字。

以下是创建此应用程序的步骤。

1、创建一个名称为Students的项目。

2、添加名称为DisplayStudent的JFrame Form。

3、添加2个Label控件来显示名称,并使用以下名称更改变量名lblStudent1和lblStudent2。此外,还添加了一个标签控件,用作Form窗口的标题,并将其文本更改为“学生姓名显示器”。此标签的变量名不需要更改,因为它仅用作描述。

4、 添加一个变量名为ShowButton的按钮,并更改文本为“Show Student 1”。

此外,还可以添加变量名为lblShow的标签,并使用“Show Student 2”作为显示文本。

要使显示学生姓名的标签在程序首次运行时不出现,必须在DisplayStudent的构造方法里面将两个标签的文本设置为空字符串。

此时单击Show Student 1按钮和Show Student 2标签时没有任何反应。像上一个案例一样,需要添加事件代码。给按钮添加事件代码想必学生已经掌握了;给Show Students 2标签添加事件代码的步骤是:

在该标签上右击→Event→Mous→MouseClicked;“Show Student 1”按钮和“Show Student 2”标签的事件

上面代码中的第104行到第108行是按钮ShowButton的事件,它将显示学生的名字“王渤”,并将其设置为蓝色。而第110到第114行是标签lblShow的一个事件,它将显示学生“黄宝强”的名字,并将其设置为红色。

单但击“Show Student 1”按钮后,单击“Show Student 2”标签

案例4——图像显示小应用

本案例将展示如何在窗体上显示图像。单击“Show Image”按钮,图像就会出现。

以下是创建此应用程序的步骤:

1、用名称DisplayImage创建一个项目。

2、添加名为ImageViewer的JFrame Form。

3、要在窗体上显示图像,请添加一个带有变量名称lblImage的标签。此外,还可以在Form窗口上添加一个用做标题的标签,并更改文本为“图像显示小应用”。这个标签的变量名不需要更改,因为它只是一个描述。

4、添加一个变量名为ShowButton的按钮,并更改文本为“Show Image”。

在本例中,通过单击lblImage标签并拖动标签周围的小方块来拉大lblImage的高度和宽度。并通过lbllmage右击→properties属性窗口为标签提供边框

要删除lbllmage上的文本“jLabel2”字样,可以右击lblImage→Edit Text并删除文本。用户还可以通过在程序第一次运行时提供一个空字符串来实现这一点

此时单击“Show Image”按钮没有任何反应,需要添加一个按钮单击事件。“Show Image”按钮的事件的代码如下:

lblImage.setIcon(new javax.swing.ImageIcon("C:\\wy\\ww.png"));

屏幕截图 2021-07-10 223603

lblImage.setIcon(new javax.swing.ImageIcon("C:\\wy\\ww.png"));

在上面的代码中,可以看到Imagelcon类传递了一个字符串作为参数,该参数是显示图像的名称和位置。可以看到传递的参数是C:\\wy\\ww.png。这意味着所显示的图像名称为logo.png,并且它位于C:\\wy\\ww.png目录中。用户可以根据想展示的图像的名称和位置更改此参数,为自己计算机里面图片的路径。

...全文
320 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

51,411

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧