关键词:
标签和按钮也许是图形界面中最常见的两种组件,按钮又总是与激发动作事件有关。
标签
标签(JLabel)是最简单的Swing组件。标签对象的作用是对位于其后的界面组件作说明。可以设置标签的属性,即前景色,背景色、字体等,但不能动态地编辑标签中的文本。
程序关于标签的基本内容有以下几个方面:
- 声明一个标签名;
- 创建一个标签对象;
- 将标签对象加入到某个容器。
JLabel类的主要构造方法是:
- JLabel ():构造一个无显示文字的标签;
- JLabel (String s):构造一个显示文字为s的标签;
- JLabel(String s, int align):构造一个显示文字为s的标签。align为显示文字的水平方式,对齐方式有三种:
- 左对齐:JLabel.LEFT
- 中心对齐:JLabel.CENTER
- 右对齐:JLabel.RIGHT
JLabel类的其他常用方法是:
- setText(String s):设置标签显示文字;
- getText():获取标签显示文字;
- setBackground(Color c):设置标签的背景颜色,默认背景颜色是容器的背景颜色;
- setForeground(Color c):设置标签上的文字的颜色,默认颜色是黑色。
按钮
按钮(JButton)在界面设计中用于激发动作事件。按钮可显示文本,当按钮被激活时,能激发动作事件。
JButton常用构造方法有:
- JButton():创建一个没有标题的按钮对象;
- JButton(String s):创建一个标题为s的按钮对象。
JButton类的其他常用方法有:
- setLabel(String s):设置按钮的标题文字。
- getLabel():获取按钮的标题文字。
- setMnemonic(char mnemonic):设置热键
- setToolTipText(String s):设置提示文字。
- setEnabled(boolean b):设置是否响应事件
- setRolloverEnabled(boolean b):设置是否可滚动。
- addActionListener(ActionListener aL):向按钮添加动作监视器。
- removeActionListener(ActionListener aL):移动按钮的监视器。
按钮处理动作事件的基本内容有以下几个方面:
- 与按钮动作事件相关的接口是ActionListener,给出实现该接口的类的定义;
- 声明一个按钮名;
- 创建一个按钮对象;
- 将按钮对象加入到某个容器;
- 为需要控制的按钮对象注册监视器,对在这个按钮上产生的事件实施监听。如果是按钮对象所在的类实现监视接口,注册监视器的代码形式是
addActionListener(this);
参见【例 11-3】,如果是别的类A的对象a作为监视器,类A必须实现ActionListener接口,完成监视器注册需用以下形式的两行代码:
A a = new A(); //创建类A的实例a
addActionListener(a); //用对象a作为监视器对事件进行监视。 - 在实现接口ActionListener的类中,给出处理事件的方法的定义:
public void actionPerformed(ActionEvent e);
在处理事件的方法中,用获取事件源信息的方法获得事件源信息,并判断和完成相应处理。获得事件源的方法有:方法 getSource()获得事件源对象;方法getActionCommand()获得事件源按钮的文字信息。
【例 11-3】处理按钮事件实例,应用程序定义了一个窗口,窗口内设置两个按钮,当点击Red按钮时,窗口的背景色置成红色;点击Green按钮时,窗口的背景色置成绿色(查看源代码)。
用鼠标点击按钮产生事件对象,将事件送达对象,这个过程称为激发事件。当一个事件被送到监视器对象时,监视器对象实现的接口方法被调用,调用时系统会提供事件对象的参数。程序中虽然没有调用监视器方法的的代码,但是程序做了两件事:第一,指定哪一个对象是监视器,它将响应由按钮的激发的事件,这个步骤称为监视器注册。第二,必须定义一个方法,当事件送到监视器时,这个方法将被调用。程序中没有调用这个方法的代码,这个调用是系统执行的。
在上面的程序中,代码
redBut.addActionListener(this);
注册this作为redBut按钮的监视器,随后的代码也注册this作为greenBut按钮的监视器。在上述的程序中,this就是当前的ButtonDemo对象myButtonGUI。这样,ButtonDemo类就是监视器对象的类,对象MyButtonGUI作为两个按钮的监视器。在类ButtonDemo中有监视器方法的实现。当一个按钮被点击时,系统以事件的激发者为参数,自动调用方法actionPerformed ()。
组件不同,激发的事件种类也不同,监视器类的种类也不同。按钮激发的事件称为action事件,相应的监视器称为action监视器。一个action监视器对象的类型为ActionListener,类要实现ActionListener接口。程序体现这些内容需要做到两点:
- 在类定义的首行接上代码implements ActionListener;
- 类内定义方法actionPerformed ()。
前面程序中的类ButtonDemo正确地做到了这两点。
每个界面元素当激发事件时,都有一个字符串与这个事件相对应,这个字符串称为action命令。用代码 e.getActionCommand www.qicaiyulept.cn ()就能获取action事件参数e的命令字符串,据此,方法actionPerformed()就能知道是哪一个按钮激发的事件。在默认情况下,按钮的命令字符串就是按钮上的文字。如有必要可以用方法 setActionCommand()为界面组件设置命令字符串。
十.图形界面(gui)设计1.图形界面设计基础
...输入数据,程序将信息输出在屏幕上。现代程序要求使用图形用户界面(GraphicalUserInterface,GUI),界面中有菜单、按钮等,用户通过鼠标选择菜单中的选项和点击按钮,命令程序功能模块。本章学习如何用Java语言编写GUI科学试验,... 查看详情
十.图形界面(gui)设计14.键盘事件
键盘事件的事件源一般丐组件相关,当一个组件处于激活状态时,按下、释放或敲击键盘上的某个键时就会发生键盘事件。键盘事件的接口是KeyListener,注册键盘事件监视器的方法是addKeyListener(监视器)。实现KeyListener接口有3个:... 查看详情
十.图形界面(gui)设计2.框架窗口
窗口是GUI编程的基础,小应用程序或图形界面的应用程序的可视组件都放在窗口中,在GUI中,窗口是用户屏幕的一部分,起着在屏幕中一个小屏幕的作用。有以下三种窗口:Applet窗口:Applet类管理这个窗口,当应用程序程序启动... 查看详情
十.图形界面(gui)设计13.鼠标事件
鼠标事件的事件源往往与容器相关,当鼠标进入容器、离开容器,或者在容器中单击鼠标、拖动鼠标时都会发生鼠标事件。java语言为处理鼠标事件提供两个接口:MouseListener,MouseMotionListener接口。MouseListener接口MouseListener接口能... 查看详情
十java_gui
...AWT二、组件和容器三、布局管理器四、事件处理五、java图形六、window事件 一、AWTAWT(AbstractWindowToolkit)包括了很多类和接口,用于JavaApplication的GUI(GraphicsUserInterface提醒用户界面)编程GUI的各种元素(如:窗口,按钮,文本框... 查看详情
图形界面设计(代码片段)
第8章图形界面设计1AWT和Swing图形用户界面简称GUI设计图形用户界面时一般有3个步骤,分别是选取组件,设计布局和响应事件。Java抽象窗口工具集称为AWT,后来的JDK版本提供的Swing功能更强awt在java.awt包中,swing在javax.swing包中Swin... 查看详情
gui(图形用户界面)
AWT概述 GUI全称是GraphicalUserInterface,即图形用户界面,即应用程序提供给用户操作的图形界面,包括窗口、菜单、按钮、工具栏和其它各种图形界面元素 GUI设计提供了丰富的类库,这些类分别位于java.awt和javax.swing包中,... 查看详情
十.图形界面(gui)设计4.面板
面板有两种,一种是普通面板(JPanel),另一种是滚动面板(JScrollPane)。JPanel面板是一种通用容器,JPanel的作用是实现界面的层次结构,在它上面放入一些组件,也可以在上面绘画,将放有组件和有画的JPanel再放入另一个容器里。JPa... 查看详情
冯志霞201771010107《面向对象程序设计(java)》第十三周学习
实验十三 图形界面事件处理技术实验时间2018-11-221、实验目的与要求(1)掌握事件处理的基本原理,理解其用途;(2)掌握AWT事件模型的工作机制;(3)掌握事件处理的基本编程模型;(4)了解GUI界面组件观感设置方法;(5)掌握W... 查看详情
十.图形界面(gui)设计5.布局设计
在界面设计中,一个容器要放置许多组件,为了美观,为组件安排在容器中的位置,这就是布局设计。java.awt中定义了多种布局类,每种布局类对应一种布局的策略。常用的有以下布局类:FlowLayout,依次放置组件。BoarderLayout,将组... 查看详情
2016710101182016-2017-2《java程序设计》第十三周学习心得
...sp; 第十三周课程学习已经结束,我们学习了图形用户界面GUI(GraphicalUserInterfaces),为用户提供交互式的图形化操作界面,Java有专门的类库:生成各种标准图形界面元素和处理图形界面的各种事件。用来生成图形用户界... 查看详情
如何设计一个复杂的图形用户界面,同时使用构建器设计模式和抽象设计模式?
】如何设计一个复杂的图形用户界面,同时使用构建器设计模式和抽象设计模式?【英文标题】:HowcanIdesignacomplexGUIemployingbothbuilderdesignpatternandabstractdesignpattern?【发布时间】:2021-11-2323:13:28【问题描述】:我正在尝试创建一个... 查看详情
201771010121唐月晨实验十三图形界面事件处理技术(代码片段)
实验十三 图形界面事件处理技术 实验时间2018-11-22 1、实验目的与要求 (1)掌握事件处理的基本原理,理解其用途;(2)掌握AWT事... 查看详情
201771010142张燕/杨蓉庆实验十三图形界面事件处理技术(代码片段)
实验十三 图形界面事件处理技术实验时间 2018-11-22 基础知识: ?事件源(eventsource):能够产生事件的对象都可以成为事件源,如文本框、按钮等。一个事件源是一个能够注册监听器并向监听器发送事件对象... 查看详情
王颖奇20171010129《面向对象程序设计(java)》第十三周学习总结(代码片段)
实验十三 图形界面事件处理技术实验时间2018-11-221、实验目的与要求(1)掌握事件处理的基本原理,理解其用途;(2)掌握AWT事件模型的工作机制;(3) 掌握事件处理的基本编程模型;(4)了解GUI界面组件观感设置方法;(5)... 查看详情
怎么用matlab实现计算器功能
根据自己的结构设想,利用GUIDE命令,驱动GUI图形编辑器,制作图形用户界面。大致操作过程:1、新建一个GUI界面2、添加组件,如静态文本框,编辑框,按钮等,界面设计后保存其Fig文件,扩展名为.fig,M文件的扩展名为.m。3、... 查看详情
设计一个程序,在文本框中输入一个3位整数,单击按钮后,在标签上输出该数的百位数、十位数和个位数
vb6测试通过。文本框名称为txtNum,显示信息的标签名称为lbl,按钮的名称为btn。按钮的click事件代码如下:Private Sub btn_Click()Dim num As IntegerIf IsNumeric(txtNum.Text) = True Then num =&nb... 查看详情
matlab使用gui设计简单的计算器(代码片段)
...反思1.准备工作本文使用的版本是Matlab2018b。了解GUI:图形用户界面(GraphicalUserInterface,简称GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。该GUI实现了计算器的一些基本功能,如... 查看详情