第7章 图形用户界面

合集下载

第07章+图形用户界面的创建(精简版)

第07章+图形用户界面的创建(精简版)
第7章 图形用户界面的创建
本章主要内容
图形用户界面的概述
常用容器类与容器布局管理
事件处理
Java程序设计
第7章 图形用户界面的创建
7.1 图形用户界面的概述
图形用户界面(GUI)是用户与程序交互的窗口,设 计和实现图形用户界面时,主要包含两项内容。 (1)创建图形界面中需要的元素,进行相应的布局。 (2)定义界面元素对用户交互事件的响应以及对事 件的处理。
•布局管理类 •Container •Scrollpane •Panel •Applet
•Button •Checkbox •List
•Dialog
Java程序设计
第7章 图形用户界面的创建
AWT
•AWT •( 重量级组件)
•通过 •java.awt 包
•创建 GUI
•容器
•包含 AWT 容器组件
Java程序设计 第7章 图形用户界面的创建
基本的 Swing 应用程序
•导入必要的包,一般还需导 入: import javax.swing.*; • import java.awt.*; public class HelloSwing { • import java.awt.event.*; •设置一个 public static void main(String[] args) { •顶级容器
Java程序设计
第7章 图形用户界面的创建
Swing
•通过 •Swing •(轻量级组件,纯Java组件) •Javax.swing 包
•创建 GUI
•容器 Swing 包 含 内 容 Java程序设计
•包含 Swing 组件 •以图形表示的对象允许用户交互 •可更换图形界面的风格

matlab第7章图形用户界面设计PPT教学课件

matlab第7章图形用户界面设计PPT教学课件

2020/12/11
南京信息工程大学信息与控制学院
13
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
7.1.3 用属性编辑器设置控件属性
1、打开属性编辑器 (1)用工具栏上的图标 (2)从View菜单中选择Property
Inspector 菜单项 (3)鼠标右键弹出菜单选择Property
控件对象的属性包括公共属性、基本控制属 性、修饰控制属性、辅助属性和Callback管 理属性几类
2020/12/11
南京信息工程大学信息与控制学院
19
第7章 图形用户界面设计
§7.3 对话框设计
7.3.1 公共对话框 1、文件打开对话框 2、文件保存对话框 3、颜色设置对话框 4、字体设置对话框 5、打印设置对话框 6、打印预览对话框
1、创建控件对象 一般步骤
2020/12/11
南京信息工程大学信息与控制学院
8
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
7.1.1 布局编辑器
2、激活图形用户界面
2020/12/11
南京信息工程大学信息与控制学院
9
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
7.1.1 布局编辑器
2020/12/11
南京信息工程大学信息与控制学院
3
第7章 图形用户界面设计
§7.1 图形用户界面开发环境
Layout Editor:在图形窗口中创建及布置图形对象 Alignment Tool:调整各对象之间的相互几何关系
和位置 Property Inspector:查询并设置对象的属性值 Object Browser:获得当前MATLAB窗口中图像对

第7章 图形用户界面

第7章 图形用户界面
建立一级菜单项的函数调用形式为:
一级菜单项句柄=uimenu(图形窗口句柄,属性名1,属性值1, 属性名2,属性值2,…) 建立子菜单项的函数调用形式为: 子菜单项句柄=uimenu(一级菜单项句柄,属性名1,属性值1, 属性名2,属性值2,…)
2012-12-22
第7章 图形用户界面设计
§7.1 菜单设计 7.1.2 菜单对象常用属性
2012-12-22
第7章 图形用户界面设计
§7.1 菜单设计 7.1.3 快捷菜单
在MATLAB中,可以使用uicontextmenu函数和图 形对象的UIContextMenu属性来建立快捷菜单,具 体步骤为: (1)利用uicontextmenu函数建立快捷菜单。 (2)利用uimenu函数为快捷菜单建立菜单项。 (3)利用set函数将该快捷菜单和某图形对象联系起来。
2012-12-22
'Units','normalized','Horizontal','center',... 'String','2~16进制','Back',[1,1,0]); he1=uicontrol(hf,'Style','Edit','Position',[0.25,0.6,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); he2=uicontrol(hf,'Style','Edit','Position',[0.25,0.4,0.2,0.1],... 'Units','normalized','Back',[0,1,0]); uicontrol(hf,'Style','Frame','Position',[0.52,0.33,0.45,0.45],... 'Units','normalized','Back',[1,1,0]); ht=uicontrol(hf,'Style','Text','Position',[0.6,0.5,0.3,0.1],... 'Units','normalized','Horizontal','center','Back',[0,1,0]); COMM=['n=str2num(get(he1,''String''));','b=str2num(get(he2,''Strin g''));',... 'dec=trdec(n,b);','set(ht,''string'',dec);']; uicontrol(hf,'Style','Push','Position',[0.18,0.1,0.2,0.12],... 'String','转 换','Units','normalized','Call',COMM); uicontrol(hf,'Style','Push','Position',[0.65,0.1,0.2,0.12],... 2012-12-22 'String','退 出','Units','normalized','Call','close(hf)');

第7章 Java的图形用户界面

第7章 Java的图形用户界面

例7-2:创建简单窗体另一种形式
import java.awt.*; public class FrameDemo extends Frame { Frame f=new Frame(); Label la1=new Label("您好,这是Label组件!"); public FrameDemo() { f.add(la1); f.setTitle("简单窗体"); f.pack(); f.setVisible(true); } public static void main(String[] args) { new FrameDemo(); } } 【运行结果】 (同样显示一个简单的窗口,内部包含一个标签组件,如图所示。)
二、AWT基本组件
1、按钮(Button) Button的构造方法: Button(String label); 常用成员方法: setLabel(String label); 将按钮的标签文字设置为指定的字符串 getLabel(); 获得此按钮的标签文字。 setActionCommand(); 设置此按钮激发的操作事件的命令名称。(默认即按钮的标签文字); getActionCommand(); 得到此按钮激发的操作事件的命令名称。 2、标签(Label) Label的构造方法: Label(String label); 常用成员方法: setText(); 设置此标签的文本。 getText(); 获取此标签的文本。 3、文本框(TextField) TextField的构造方法: TextField (String label); 常用成员方法: setText(String str); 将此文本框显示的文本设置为指定文本(继承自父类TextComponent)。 getText(); 获取文本框的文本(继承自父类TextComponent)。 setEditable(boolean b); 设置判断此文本框是否可编辑的标志。 setEchoChar(char c); 设置此文本框的回显字符(继承自父类TextComponent)。

第7章 图形用户界面GUI设计总结

第7章 图形用户界面GUI设计总结

7.1.5 回调函数
实现GUI的基本机制是对控件的Callback(回调函数)属性编程, 当在设计界面上选中一个控件后,选择菜单栏中的“View”→“View Callbacks”命令,或单击鼠标右键,从弹出的快捷菜单选择“View Callbacks”,就会出现“Callback”、“CreateFcn”、 “DeleteFcn”、“ButtonDownFcn”和“KeyPressFcn”子菜单, 这些选项都是用来编写回调函数的,其作用如下所示 。 CallBack:为一般回调函数,因不同的控件而不同。例如,按钮 被按下时发生、下拉框改变值时发生、sliderbar 拖动时发生等。 大 多数MATLAB程序代码都在这里编写,可实现诸多功能。 CreateFcn:在控件对象创建时发生(一般为初始化样式,颜色、 初始值等)。 DeleteFcn:在控件对象被清除时发生。 ButtonDownFcn:鼠标单击事件的回调函数。 KeyPressFcn:按键事件的回调函数。
保存的同时会在当前路径下自动产生两个文件:一个是 “guiHello. fig”文件,另一个是“guiHello.m”文件。其中, “guiHello.fig”文件包含对GUI和GUI组件的完整描述,它也是 打开输出编辑器界面“guiHello.fig”窗口的文件; “guiHello.m”文件包含控制GUI的代码、组件的回调函数。 单击运行按钮,显示结果就是我们所设计的GUI功能界面, 如图所示。
第四个按钮:将“String”设置为“除法”,“Fontsize”设置为 15 , “Tag”设置为“division_pushbutton4” 。
上述属性修改完后,结果如图所示。
4.存储GUIDE输出编辑器界面
单击菜单栏中的保存按钮,在“Save as”对话框中输入文件名 “yunsuanqi”,单击“保存”按钮,则图的界面最上角的名称变为 “yunsuanqi.fig”。此时在当前目录下,MATLAB将自动生成 “yunsuanqi.m”和“yunsuanqi.fig”两个文件。

第7章-MATLAB图形用户界面设计

第7章-MATLAB图形用户界面设计
可按条件,种类列于表中供用户选择。点击时会触发回调函数
用户点击后可弹出供选择项。点击时会触发回调函数
用户点击时可根据范围取其当前值,以图形化的方法输入数据, 观测不同数据下的实验结果。点击时会触发回调函数
2020/6/8
清华大学出版社
1-4
静 面板

Panel

文本区

Text field
菜单项

2020/6/8
清华大学出版社
1-7
2020/6/8
清华大学出版社
1-8
创建的基本步骤如下: 1. 首先确定中需要的元素,每个元素实现的功能,并在一张纸上画出界面布局 的草图。 2. 使用工具布局图形。可以使用中内嵌的工具调整图形的尺寸,以及元件之间 的间距。 3. 使用内嵌的属性编辑器为每个元件设置标签(),相当于地址,并为每个元件 设置特征,如颜色、显示的文本等等。 4. 保存。当图形保存后,将产生两个文件,这两个文件有相同的名字,但分别 以m和作为后缀。文件包含了你所创建的实际,而M文件则包含了图形和框架 中对每个元素的回调函数。 5. 为每个元素编写回调函数。
2020/6/8
清华大学出版社
1-3
元素 按钮
创建机制 Uicontrol
pushbutton

单选按钮
Uicontrol

Radio button

复选框 件
Uicontrol
Check box
编辑框
Uicontrol
Edit box 列表框 Uicontrol
List box
下拉列表
Uicontrol
Hale Waihona Puke 020/6/8清华大学出版社

JAVA语言与面向对象程序设计 第七章 图形用户界面的设计与实现汇总

第7章 图形用户界面的设计与实现
7.1 7.2 7.3 7.4 7.5 7.6 7.7 图形用户界面概述 用户自定义成分 Java的事件处理 GUI标准组件概述 标签、按钮与动作事件 文本框、文本区域与文本事件 单、复选按钮,列表与选键盘事件 7.10 布局设计 7.11 Panel与容器事件 7.12 Frame与窗口事件 7.13 菜单的定义与使用 7.14 对话框、组件事件与焦点事件 7.15 小结 习题
7.2.2 显示文字 从 前 面 的 例 子 中 可 以 知 道 , Graphics 类 的 方 法 drawString( )可以在屏幕的指定位置显示一个字符 串。Java中还有一个类Font,使用它可以获得更加 丰富多彩和逼真精确的字体显示效果。 一个 Font 类的对象表示了一种字体显示效果,包括 字体类型、字型和字号。下面的语句用于创建一个 Font类的对象:
本章介绍 Java程序中图形用户界面 (GUI)的设计与实 现。图形用户界面是程序与用户交互的窗口。每个 图形界面下的Java程序都必须设计、建立自己的图 形用户界面并利用它接受用户的输入,向用户输出 程序运行的结果。本章将介绍图形用户界面的基本 组成和主要操作,包括绘制图形,显示动画,使用 AWT包各组件和实现Java的事件处理功能等。
2. 控制组件 与容器不同,控制组件是图形用户界面的最小单位 之一,它里面不再包含其他的成分。控制组件的作 用是完成与用户的一次交互,包括接收用户的一个 命令(如菜单命令),接收用户的一个文本或选择输 入,向用户显示一段文本或一个图形,等等。从某 种程度上来说,控制组件是图形用户界面标准化的 结果,目前常用的控制组件有选择类的单选按钮、 复选按钮、下拉列表;有文字处理类的文本框、文 本区域;有命令类的按钮、菜单等。其中文本框、 按钮和标签是前面使用过的GUI组件。

《Python程序设计》课件—07图形用户界面

yes:扩展整个空白区域; no:不扩展
解释 设置组件的对齐方式 设置组件的填充方式 设置组件是否展开
设置x方向(或者y方向)
窗口大小范围内
内部间隙(子组件之间的间
隔)
窗口大小范围内
设置x方向(或者y方向) 外部间隙(与之并列的组件 之间的间隔)
import tkinter as tk
f1=() bel(f1, text='上').pack(side='top') bel(f1, text='下').pack(side='bottom') bel(f1, text='左').pack(side='left') bel(f1, text='右').pack(side='right') f1.mainloop()
root = Tk() # ⻓户名 a_label = Label(root, text = "⻓户名: ") a_label.grid(row = 0, column = 0, sticky = W) a_entry = Entry(root) a_entry.grid(row = 0, column = 1, sticky = E) # 密码 p_label = Label(root, text = "密码: ") p_label.grid(row = 1, column = 0, sticky = W) p_entry = Entry(root) p_entry["show"] = "*" # 密码显示为 * p_entry.grid(row = 1, column = 1, sticky = E) # 登录按钮 btn = Button(root, text = "登录", command = reg) btn.grid(row = 2, column = 1, sticky = E) # 提示信息 msg_label = Label(root, text = "") msg_label.grid(row = 3) root.mainloop()

第7章 Java 图形用户界面设计


JDialog
JComponent
它是一个弹出式对话框,一般用来接收用户的输入和显示有关信息。
它是所有轻量组件类的父类,它的子类都在javax.swing包中,如JButton、JLabel、 JMenu、JRadioButton、JList、JTextField、JTextArea、JScrollPane等。
7.1 创建图形用户界面 7.2常用的布局管理器
窗口
窗口标题
3个 按钮
窗口面板
按钮组件
7.3事件驱动程序设计
7.4常用组件
第七章 Java图形用户界面设计
图形用户界面的要素
如果用户用鼠标单击了窗体中的一个按钮,这就是一个事件。需要事 先为这个按钮配备一个监听器,监听这样的事件。 在程序中要为每一个需要对事件进行处理的组件配备一个监听器。
AWT组件类创建的对象在字节码中是统一的,但它们在具体的计算机上要有一个 “对等体”真正负责程序的运行,这个对等体是用C/C++等语言开发的。因此运 行在不同的机器上的程序会略有差别,占用资源多,并且复杂的用户界面程序难 于调式。
Swing:组件取消了对等体,直接针对不同的系统解释执行字节码,从而使得程
第七章 Java 图形用户界面设计
主要内容:
7.1 创建图形用户界面
7.2
7.3
常用的布局管理器
事件驱动程序设计
7.4
常用组件
图形用户界面(GUI)
图形用户界面
用户界面是计算机的使用者(用户)与计算机系统交互的接口。用户界 面功能是否完善、友好、使用是否方便,将直接影响到用户对应用软件的 使用。
Swing组件类层次
Java.awt.Container

第7章 图形界面的设计与实现


7.2.2 Font类
字体、字型和字号 Font MyFont=new
Font(“TimesRoman”,Font.BOLD,12); Font.PLAIN Font.BOLD Font.ITALIC g.setFont(MyFont); btn.setFont(MyFont);
AvailableFonts.java
public void drawMyPolygon( Graphics g) { int[] xCoords = { 30,50,65,119,127}; int[] yCoords = {100, 140,127,169,201}; g.drawPolygon( xCoords,yCooDrdras,w5F);igures.java }
public void paint(Graphics g){ g.drawString("audio teat",25,25); play(getDocumentBase(),"explosion.au"); } }
Audio.java
7.2.5 实现动画
动画效果 在屏幕上画出一系列的帧来造成运动的感觉。为 了每秒中多次更新屏幕,必须创建一个线程来实现 动画的循环,这个循环要跟踪当前帧并响应周期性 的屏幕更新要求。实现线程的方法有两种,你可以 创建一个类Thread的派生类。
第七章 图形界面的设计与实现
7.1 图形用户界面概述 7.2 用户自定义成分 7.3 Java的事件处理 7.4 GUI标准组件概述 7.5 标签、按钮与动作事件 7.6 文本框、文本区域与文本事件 7.7 单、复选按钮,列表与选择事件
7.8 滚动条与调整事件 7.9 画布与鼠标、键盘事件 7.10 布局设计 7.11 Panel与容器事件 7.12 Frame与窗口事件 7.13 菜单的定义与使用 7.14 对话框、组件事件与焦点事件 7.15 小结 习题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
相关文档
最新文档