java 第11章_编写图形用户界面程序

合集下载

Java图形用户界面Swing编程

Java图形用户界面Swing编程

Java图形用户界面Swing编程Java图形用户界面(GUI)Swing编程Java的Swing是一种强大的GUI编程工具,可以帮助开发者创建直观且具有交互性的用户界面。

本文将介绍Swing的基本概念、使用方法以及一些常见的Swing组件。

一、Swing的概述Swing是Java提供的一套图形用户界面工具包,它基于Java的AWT(Abstract Windows Toolkit)而开发,提供了更多功能丰富和更美观的GUI组件。

Swing可以运行在多个平台上,并且具备跨平台性,这也是Swing广泛应用的原因之一。

二、Swing的使用方法1. 导入Swing库在编写程序时,需要导入Swing库。

可以使用如下代码导入Swing 库:```import javax.swing.*;```2. 创建Swing窗口使用Swing创建窗口的步骤包括创建顶层容器、设置布局管理器、创建组件和添加组件等。

下面是一个简单的例子,展示了如何创建一个Swing窗口:```public class MyWindow extends JFrame {public static void main(String[] args) {MyWindow window = new MyWindow();window.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);window.setSize(300, 200);window.setVisible(true);}}```三、常见的Swing组件1. JLabel组件JLabel是Swing中常用的组件之一,用于显示文本或图像。

可以使用如下代码创建一个JLabel组件并将其添加到窗口中:```JLabel label = new JLabel("Hello, World!");window.add(label);```2. JTextField组件JTextField是一个文本输入框组件,用户可以在其中输入文本。

如何使用Java编写一个简单的形用户界面程序

如何使用Java编写一个简单的形用户界面程序

如何使用Java编写一个简单的形用户界面程序如何使用Java编写一个简单的图形用户界面程序Java是一种跨平台的编程语言,相比于其他编程语言,它具有良好的可移植性和强大的功能性。

在本文中,我们将探讨如何使用Java编写一个简单的图形用户界面(GUI)程序。

GUI程序是一种通过图形和图标来展示信息并接受用户输入的应用程序。

在Java中,我们可以使用Swing库来构建GUI程序。

下面是一个基本的步骤指导,帮助您编写一个简单的Java GUI程序。

步骤一:导入必要的库首先,您需要导入Swing库,以便您可以使用其中的类和方法来构建GUI界面。

您可以通过添加以下代码导入Swing库:```import javax.swing.*;```步骤二:创建界面主体接下来,您需要创建GUI界面的主体。

通常,一个GUI程序由一个顶级容器(如JFrame)和其中包含的其他组件组成。

以下是一个简单的示例代码,展示如何创建一个JFrame对象:```JFrame frame = new JFrame("简单GUI程序");```步骤三:设置界面大小和关闭操作在创建主体后,您需要设置界面的大小和默认的关闭操作行为。

以下代码演示如何设置界面的大小并定义当用户关闭界面时的操作:```frame.setSize(300, 200); // 设置界面的宽度和高度frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); // 设置默认关闭操作为退出程序```步骤四:向界面添加组件在创建和设置主体后,您可以向界面中添加各种组件,如按钮、标签、文本框等。

以按钮为例,以下代码演示如何创建一个按钮并将其添加到界面中:```JButton button = new JButton("点击我");frame.getContentPane().add(button); // 将按钮添加到界面的内容面板中```步骤五:显示界面完成了界面的创建和组件的添加后,最后一步是显示界面。

Java图形用户界面设计

Java图形用户界面设计

13
(3) 事件监听器(Listener) 事件处理机制中的核心部分,主要的功能大致可以分为 两部分:第一,监听组件,观察组件有没有发生某类事 件;第二,如果监听的组件发生了某类事件,则调用对 应的动作处理方法立刻处理这个事件。 在Java事件处理机制中,监听器处于主体地位。与事件 分类对应,监听器也相应的分成若干种类型,例如,鼠 标事件对应鼠标监听器,键盘事件对应键盘监听器,窗 口事件对应窗口监听器等。
25
5.3.2 AWT组件库常用组件举例 【问题1】 在窗口f中,有一个文本框tf,三个按钮btn_1、 btn_2、btn_3。当使用鼠标点击btn_1时,文本框显示 btn_1按钮被点击,当使用鼠标点击btn_2按钮时,文本框 显示btn_2按钮被点击,当使用鼠标点击btn_3按钮或者窗 口f的关闭按钮时,窗口关闭,程序退出。
(4) Choice Choice表示下拉选择框组件,选择框中的每一个选项称 为一个Item,Item的类型一般为String字符串。 (5) Label Label表示标签组件,主要作用在于创建提示性的文本。
23
(6) MenuBar、Menu和MenuItem MenuBar表示菜单条组件,该组件由Menu菜单构成,而 Menu菜单又可由Menu菜单和MenuItem菜单项构成。 (7) TextField TextField表示文本框组件,与文本域组件不同的是, 文本框中只能有一行文本。 (8) TextArea TextArea表示文本域组件,可以容纳多行文本。
30
(3) JRadioButton和ButtonGroup 在Swing中与Checkbox对应的是JCheckBox,实际使用时, 如果需要创建单选框组的话,经常使用的是 JRadioButton而非JCheckBox。如果将多个JRadioButton 组件放在一个ButtonGroup中时,这些JRadioButton组件 将不再具有复选功能,而是只具有单选功能,也即变成 单选框。 (4) JComboBox JcomboBox对应于AWT中的Choice,表示下拉选择框组件, 选择框中的每一个选项称为一个Item,Item的类型一般 为String字符串,也可以是指定的泛型类型。

《Java语言程序设计-基础篇》答案-第11章概要

《Java语言程序设计-基础篇》答案-第11章概要
component.setForeground(color;
component.getForeground(color;
对图形环境的方法通过Graphics对象的相关set/get方法完成。
11.12答:略
11.13答:例如:JPanel panel = new JPanel(new FlowLayout(;
11.14答:默认为FlowLayout。使用add(component方法
11.15答:不可以。
目的有:嵌套容器、绘图板。





w
w w
.k
h d
a w .
c o
m
11.16答:x不变,y增加
11.17答:略
11.18答:略
11.19答:略





w
w w
.k
h d
a w .
c o
m
boideilayoutfianieaddcomponent111118种常用构造方法使用容器的addcomponent方法无限制119种常用构造方法使用容器的addcomponent方法无限制1110答构造方法有参无参addcomponent
第11章图形用户界面程序设计入门
复习题
11.1答:ponent是
frame.add(button;
如果将2句互换位置,没有影响。(JDK6测试
11.4答:对、错、对、错(受布局管理器影响、对
11.5答:第7行应该改为:
javax.swing.JFrame frame = new Test(;
11.6答:第2行:将void去掉,因为构造方法不能有返回类型。

等级考试二级JAVA考点分析之编写图形用户界面

等级考试二级JAVA考点分析之编写图形用户界面

9.1⽤AWT编写图形⽤户界⾯考点1:编写图形⽤户界⾯ (1)编写图形⽤户界⾯要⽀持跨平台。

(2)Java图形界⾯开发包的发展经历了两个阶段:AWT和Swing。

(3)Java采⽤构件思想开发图形⽤户界⾯。

(4)编写图形⽤户界⾯的基本步骤:⾸先确定界⾯中的构件如何放置,然后使构件响应⽤户的操作,最后掌握各种构件的外观及能响应的⽤户操作。

考点:2java.awt包简介 (1)java.awt包可⽤于编写Java Application和Applet的图形⽤户界⾯。

(2)java.awt包提供的图形⽤户界⾯的功能有:⽤户界⾯构件、事件处理模型、图形和图像⼯具、布局管理器和数据传送。

(3 ) java.awt包含有3个主要的类:构件、容器和布局管理器。

(4) Java.awt包中的类和接⼝主要有AWTEvent, Font, Component, Graphics , MenuComponent,以及各种布局管理器。

考点:3构件(Component) 作为Java图形⽤户界⾯的最基本组成部分,构件是⼀个可以在屏幕上与⽤户交互的以图形⽅式出现的可视化对象。

(1) java.awt.Component类提供了构件类的定义。

(2)构件不能独⽴于容器显⽰出来。

(3)编写⼀般的⽤户界⾯程序使⽤的构件都是Component的⼦类。

(4) Component类的⽅法有:getFont()、getName()、getSize()、paint(Graphics g)、repaint)和update()等。

考点:4容器(Container) Container是Component的⼦类,具有构件的所有性质,并且能够放置基他容器和构件· (1)java.awt.Container类提供了容器类的定义。

(2)⼀个容器能够容纳若⼲个构件。

(3)不同的构件通过调⽤add()⽅法将⾃⼰加⼊相应的容器中。

java_11GUI编程

java_11GUI编程

窗体Frame

public void dispose()
– //可以撤销当前窗口,释放窗口所使用的资源

Frame是Window的子类,凡是Window子类的对 象都引发WindowEvent事件。 当一个Frame窗口被激活、撤销激活、打开、关 闭、最小化或撤销最小化,就会引发窗口事件, 获得监视器的方法如下: public void addWindowListener(WindowListener)
BorderLayout(边框布局)

构造函数
BorderLayout();
//各组件纵、横间距为0 BorderLayout(int hgap, int vgap); //hgap横间距,vgap纵间距,象素为单位

add (组件,位置);

位置可取值:
BorderLayout.NORTH[WEST,CENTER,EAST,SOUTH]



容器(Container )
AWT中的容器
Window Frame(重点掌握) Dialog Panel Applet

Frame 窗体
介绍:Frame是一个带有边框、标题栏、菜单的图形 容器。 构造方法:
Frame() 创建一个空白框架 Frame(String s) 创建一个使用 s 做标题的框架。 Frame类常用的方法: public void setIconImage(Image image):设置窗体显示的图 标 public void setMenuBar(MenuBar menubar):加载窗体使 用的菜单对象 public void setLayout(LayoutManager manager):设置窗体 使用的布局管理器

如何编写一个基本的图形用户界面

如何编写一个基本的图形用户界面

如何编写一个基本的图形用户界面要编写一个基本的图形用户界面,首先需要选择一个合适的开发工具,常用的工具有JavaFX、Swing、Python Tkinter等。

在这里以JavaFX为例进行讲解。

第一步是创建一个JavaFX项目,可以使用IDE工具如IntelliJ IDEA、Eclipse等来创建项目。

在创建项目的过程中,需要选择JavaFX作为项目的模板。

第二步是创建一个主窗体,也就是用户界面的窗口。

可以使用JavaFX的Stage和Scene类来创建窗口,设置窗口的标题、大小和其他属性。

第三步是在窗口中添加控件,例如按钮、文本框、标签等。

可以使用JavaFX库中提供的控件类来添加控件,设置控件的位置、大小和样式。

第四步是定义控件的事件处理逻辑。

可以为按钮等控件添加事件处理器,响应用户的操作。

可以使用JavaFX的事件处理机制来实现控件的事件处理。

第五步是运行程序,测试图形用户界面的功能。

可以启动程序,查看界面的效果,测试各个控件的功能是否正常。

在编写图形用户界面的过程中,需要注意一些细节。

例如,要保持界面的清晰简洁,避免过多的控件和布局;要保持控件之间的逻辑关系清晰,设计合理的布局;要处理好用户输入,对用户的操作进行合理的响应。

此外,还可以使用JavaFX提供的CSS样式来美化界面,使界面更加美观。

可以为控件添加样式类,设置控件的样式属性,实现界面的定制化。

总的来说,编写一个基本的图形用户界面需要选择合适的开发工具,创建窗体、添加控件、定义事件处理逻辑、运行测试,并注意细节和界面美化。

通过不断的学习和实践,可以不断提升图形用户界面的设计和开发能力。

希望以上内容能对您有所帮助。

如何使用JAVA进行图形界面编程

如何使用JAVA进行图形界面编程

如何使用JAVA进行图形界面编程引言:在计算机科学领域中,图形用户界面(GUI)是一种用户与计算机交互的界面形式。

它通过图形元素如按钮、文本框、菜单等,提供了一种直观、友好的方式来操作计算机程序。

JAVA作为一种强大的编程语言,提供了丰富的库和工具来进行图形界面编程。

本文将介绍如何使用JAVA进行图形界面编程,包括界面设计、事件处理和布局管理。

一、界面设计1.1 使用Swing库JAVA的Swing库是一套用于创建图形用户界面的API。

它提供了各种组件和容器来构建界面。

首先,我们需要导入Swing库:```javaimport javax.swing.*;```1.2 创建主窗口在JAVA中,主窗口通常是一个JFrame对象。

我们可以使用如下代码创建一个简单的主窗口:```javaJFrame frame = new JFrame("My Application");frame.setSize(800, 600);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setVisible(true);```1.3 添加组件在主窗口中,我们可以添加各种组件来构建界面。

例如,我们可以添加一个按钮:```javaJButton button = new JButton("Click me");frame.getContentPane().add(button);```1.4 布局管理布局管理器用于控制组件在界面中的位置和大小。

JAVA提供了多种布局管理器,如FlowLayout、BorderLayout和GridLayout等。

我们可以根据需要选择合适的布局管理器。

例如,使用FlowLayout布局管理器:```javaframe.getContentPane().setLayout(new FlowLayout());```二、事件处理2.1 添加事件监听器事件监听器用于处理用户与界面交互时触发的事件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

11.2.2 Swing窗口对象
通过上面的例子,我们大体上理解了窗口程序的设计 过程。在Jpro11_3.java中,使用了Swing中的窗口组 件JFrame类,它属于javax.swing类库。javax.swing类 库提供的部分容器类以及它们之间的继承关系如图117所示。 从图11-7可以看出,除了四个顶层容器之外,容器类 都是JComponent类的子类。而JComponent类是 Container类的子类,所以在Component类和Container 类中定义的方法,在Swing的容器类中都可以使用。比 如,Jpro11_3.java中jf对象使用的setSize()、 setBackground()、setLocation()与setVisible()方法都 是在Component类中定义的,add()方法则是在 Container类中定义的。
11.1.1 GUI组成元素分类
在Java中,GUI组成元素都放在java.awt和 javax.Swing包内,它们都包含了大量的类。构 成图形用户界面的各种元素和成份可以粗略地 分为三类:容器(container)、组件 (components)和用户自定义成份。 1.容器 . 容器是用来组织或容纳其他界面成份和元 素的组件。Java提供了相应的容器类,例如, 框架(JFrame/Frame)、面板(JPanel/Panel) 及滚动面板(JScrollPanel/ScrollPanel)等类。
1.当新建的窗口显示在显示器上,或从隐藏变成显 示时; 2.从缩小图标还原之后; 3.正在改变窗口的大小时。
11.1.3 颜色、字体和图形(续)
paint()方法的格式是: public void paint(Graphics g) 可以将Graphics对象传给paint()方法,这样一来,编 写在paint()里面的程序代码便可在绘图区内绘制图形了。 上面的绘图代码就可以进行改写,将绘制矩形的代码放在 paint()方法里面,程序通过调用paint()进行绘图。 Graphics g=frame.getGraphics(); paint(g); g.drawRect(30,60,140,40); 第二条语句是调用paint()方法在指定的组件上进行绘 图,第三条语句应写在paint()方法内,绘制长方形。
11.2 Swing容器
Swing工具包中提供了三类容器组件,分别是: 1.顶层容器:JFrame、JDialog、JApplet、 Jdialog,这四个组件是 Swing 库中仅有的重量 级容器; 2.中间容器:JPanel、JScrollPane、JSplitPane、 JTabbedPane和JToolBar,用于容纳其他组件, 但需要放置在顶层容器中。 3.特殊容器:在GUI上起特殊作用的中间层,如 JInternalFrame、JLayeredPane、JRootPane。
11.2 Swing容器(续)
与AWT容器不同,Swing组件不能直接添加到顶层容器 中,它必须添加到一个与Swing顶层容器相关联的内容 面板(JContentPane)上。内容面板是顶层容器包含 的一个普通容器它是一个轻量级组件。
图11-5 Swing容器层次结构
11.2.1 简单的窗口对象示例
程序分析: 这个例子中,在类Jpro11_2里面定义一个Frame窗口 对象,该容器同时也实现了事件监听器功能。在该窗口类 中定义了五个静态的对象,分别是两个Label标签对象: tip和result,tip起到提示操作的功能,result显示操作的结 tip result tip result 果;两个TextField文本框对象:sys和user,sys显示了系 统自动产生的数字,user供用户输入信息;还有一个 Button按钮对象submit,供用户输入后提交答案;这些均 是AWT基本组件。setBounds()、setVisible()等方法用来改 变窗口对象的状态,具体见下节。add()方法通常用于将一 些基本组件加入到容器里面。本程序还涉及到了布局管理 和事件驱动设计,AWT和Swing在这两部分基本是相同的, 这两部分内容在本章后面将详细说明。
11.1.3 颜色、字体和图形(续)
3.Graphics类 . 类 Graphics类是所有图形上下文的抽象基类,允许应 用程序在组件上进行图形绘制。由于不能直接创建对 象,一般通过以下两种方法获得该对象: 调用paint()或update()方法,系统自动获取当前界 面的Graphics对象作为参数传递给GUI程序; 调用Component类的getGraphics()方法。 比如,想在窗口中绘制一个矩形,下面的语句就 可以实现。 Graphics g=frame.getGraphics(); g.drawRect(30,60,140,40);
11.1.2 AWT和Swing介绍
Sun公司提供了两个图形工具类包AWT和Swing,负责 构建GUI界面。AWT是将本地化的工具组件进行简单 抽象而形成的。用AWT创建组件和进行事件处理时, 都是直接由相应组件进行自身绘制并对事件作出响应。 由于AWT的这个特征,这些组件被称为重量级组件, AWT被称为重量级的图形工具。 考虑到跨平台的原因,AWT只提供了各个平台都支持 的、构建GUI必需的一些基本组件。因此AWT包小而 简单。由于AWT直接调用本地图形构件来实现图形界 面,使得用AWT构件的GUI往往在不同的操作系统平 台上具有不同的风格,而且GUI的性能也受到了限制。 这影响了Java程序的跨平台性。
11.1.3 颜色、字体和图形(续)
11.1.3 颜色、字体和图形(续)
比如,要使用一个红色对象,下面几种方 法都可以实现: Color.red Color.RED new Color(255,0,0) new Color(1.0,0.0,0.0)
11.1.3 颜色、字体和图形(续)
2.Font类 . 类 Font类是用来规范组件所用文字的字体、大小和 样式等。Font类提供了一个构造方法Font(),一个设置 字体的成员方法setFont(),以及若干个获取字体有关 信息的成员方法。要设置一个字体,可以使用Font()构 Font() 造方法实现: Font(String fontname,int style,int size) 其中,fontname为字体名,如宋体、黑体、楷体、 Arial、Courier、TimesRoman、Helvetica等;style为 字体样式,如粗体(BOLD)、斜体(ITALIC)、正常 体(PLAIN);size为用像素点表示的字体大小。
图11-3 AWT的绘图
类Graphics的常用方法
类Graphics的常用方法(续)
注意,上面的所有方法只要涉及到坐标,均是以窗口 的左上角为原点,向右为正x方向,向下为正y方法。
11.1.4 使用AWT创建图形用户 界面
使用AWT构建一个图形用户界面的基本步骤一 般包括以下几步:
创建容器组件(如Frame、Panel等),在容器中添 加需要的其他组件(如Button、Label、TextField和 Checkbox等)。 创建布局管理器,用来自动设置容器中组件的位置 和大小。 使用委派事件模型来响应用户操作,实现用户和程 序的交互。
11.1 GUI概述
图形用户界面(GUI,Graphics User Interface)是软件 产品与用户交互的接口,是软件产品中用户可以看到并 直接操作的部分。如图11-1所示,Java语言集成开发工 具JCreator提供了良好的用户 界面,使用户编写Java程序 变得简单。用户通过图形界 面向计算机系统发布命令、 控制操作,系统的结果也以 图形界面方式显示给用户。
AWT中各种基本组件类如表11-3所示。
AWT基本组件
AWT创建图形用户界面示例
例11.2 显示一个数字验证窗口,并通过信息显示是否输入 . 显示一个数字验证窗口, 正确。 正确。
AWT创建图形用户界面示例 (续)
运行结果如图11-4所 示。
图11-4 AWT窗口示例程序
AWT创建图形用户界面示例 (续)
11.1.3 颜色、字体和图形(续)
第一条语句是取得窗口的绘图区,第二条 语句是绘制长方形。但是,当用其他窗口覆盖 这个窗口,或者将窗口最小化时,绘制出来的 图形也会随之覆盖或者消失。为了避免这种情 况,AWT提供了一个自发性的paint()方法。 paint()方法在下列情况发生时,会自动运行:
11.1.2 AWT和Swing介绍(续)
Swing不但重写了AWT中的组件,还为这些组 件增添了新的功能,提供了许多AWT没有的、 创建复杂图形用户界面的组件,增强了GUI与 Java程序的交互功能。Swing提供的可插入式 的观感能让用户创建出跨平台的GUI。 Swing和AWT部分组件的继承关系和层次关系 如图11-2所示。
11.1.2 AWT和Swing介绍(续)
图11-2 Swing和AWT部分组件的继承和层次关系
11.1.3 颜色、字体和图形
在进行用户界面设计时,经常会用到Color类、Font类 和Graphics类,分别用来设置颜色、字体和图形,这 三个类属于java.awt包,同样可以在创建Swing界面时 使用。 1.Color类 1.Color类 Color类用于封装默认sRGB颜色空间中的颜色,或 者用于封装由ColorSpace标识的任意颜色空间中的颜 色。Color类中已经创建了一些常见的颜色对象,包括 BLACK、BLUE、CYAN、GRAY、GREEN、MAGENTA、 ORANGE、PINK、RED、WHITE等,这些颜色对象可 以直接使用。当然,也可以通过Color类的构造方法来 创建颜色。表11-1列出了Color类的构造方法。
11.1.1 GUI组成元素分类(续)
2.组件 . 与容器不同,组件是图形用户界面的基本单位, 里面不再包含其他成份。组件是一个可以以图形化的 方式显示在屏幕上并能与用户进行交互的对象,例如 一个按钮,一个标签等。组件不能独立地显示出来, 必须将组件放在一定的容器中才可以显示出来。 3.用户自定义成份 . 除了上述的标准图形界面元素外,编程人员还可 以根据用户的需要,使用各种字型字体和颜色设计一 些几何图形、标志图案等,它们被称作用户自定义成 份。用户自定义成份通常只起到显示结果、装饰美化 的作用,不能响应用户的动作,不具有交互功能。
相关文档
最新文档