GUI的基础知识总结
- 格式:docx
- 大小:30.86 KB
- 文档页数:11
图形用户界而GUI (Graph i cal User Interfaces)就是一种用户与计算机进行信息交流得工具与方 法川I各种图形对象组成,在这种用户界而卜;用户得命令与对程序得控制就是通过鼠标等输入设备''选 择"各种图形对象来实现得。软件开发者只需在曲软件开发工具门动生成得程庠代码中添加门己得运 算或控制代码,就町以完成应用程序得设计。□前90%以上得应用程序与软件都就足在GUI卜•运行 得。血 MATLA B有两种GUI用户界面控件得创建方式,基丁命令行得编程方式制作与基丁•
MA
T LAB提供得图形用户界面开发坏境GUIDE中得图形用户界而开发工具得GUI创建方式制作.这里 主要介绍基r- GUIDE得创建方式。
在GUI得设计中应注意在面板上进行按钮得静态布S时一宦要事先预算好按钮得个数.更重
耍得一点就是如果您放冒了 1个按钮井且对此按钮得屈性进行了某种操作,那么该按钮得痕迹将永远
保存在您所建得而板上,您将该按钮删除,然后重新建一个按钮,并将其屈性值设置与上一个按钮一 模一样,那并不能保证您将上一按钮覆盖,在程序进行运行得过程中它只会识别上一按钮(已经删除得 按钮),而您将上一按诳得删除则造成程序运行中得错误或就是得不到您预想得界面效果,为了避免这 种情况,在进行设计得时候对任一按钮屈性得设置不要与己经剧除按钮得屈性相同.
Matla b为GUI设计一共准备了 4种模板,分别就是:^BlankGUI(Default)(空白模板,默认): ©GUI
with Uicontrols (带控件对象得 GUI 模板);bGUIwith Axes and M e n u (带坐 标轴与菜单得GUI模板);^Modal Quest! o n D i a 1 og (带模式问题对站框得GUI模板)。 並 肖用户选择不同得模板时,在G UI设计模板界面得右边就会显示出与该模板对应得GUI
图形。在GUI设计模板中选中一个模板,然后单击OK按钮,就会显示GUI设计窗口。选择不同得G
UI设计模式时,在GU I设计窗口中显示得结果就是不一样得。
图形用户界面GUI设计•窗口市菜单栏、工具栏、控件工具栏以及图形对象设计区等4个功能
区组成。
b 按钮(P ush Butto n s):执行某种预定得单功能或操作:血(上要屈性:va 1
e :value=Max 选中,valu e =Min 不选中。Ma x : 1 Min 0〉血 双位开关按钮(1b ggle
Utt on):产生一个动作并指示1个二进制状态
(开或关),当鼠标点击它时按钮将卜•陷,并执行callb日ck(回调函数〉中指定得内容,再次点击, 钮复原,并再次执行callback中得内容;
(3 )单选框(Radio Bu t ton):单个得单选框用来任两种状态之间切换,多个单选框组成一个单选框 b
MATLAB得GUI得基本图形对象分为控件对象uicontro I与用户界而菜单对象u imenu
(包括固定菜单与现场菜单),简称控件垢菜单.
控件对象及屈性(0 bjectand its attributes of cont r oiler) )Ldi, GU I 控件对象类型(The
mode o f cont rollerobj ect> 控件对象就是事件响应得图形界而对象。当某一事件发生
时,应用程序会做出响应并执行某些预定得功能子程序(Callb a ck)、血常用得基木控件:
U
B 组时,用户只能在一组状态中选择单一得状态,或称为单选项q 复选框(Check Boxes):单
个得复选框用来在两种状态之间切换,多个
复选框组成一个复选框组时,可使用户在一组状态中作组合式得选择,或称为多选项: 文木编辑器(Edi t table Texts):用来使用键盘输入字符串得值,町以对编辑框中得内 容进行编辑、删除与替换等操作(允许用户动态得编译或重新安排文木串"血主要屈性:$ tri n g Max Min。町以包含一行或多行文木。单行町编译文本框只接受一行输入,而多行可编译文木框 可接受二行以上得输入。通过把'Max', 'MirV届性值得设定决宦一行或者就是多行.默认情况卜 Max=tMin=0 %当Max,Min取值l*li Max-M i n>l.建立多行町编译文木框.Max属性不注定最 大得行数,多行町编译文木框具有无限多行:默认惜况卞为Max-Min< = l单行输入
静态文木框(Static Te xts):仅仅用于显示单行得说明文字:血 滚动条(Slider):町
输入指定范围得数 M:主耍屈性:POS ition
value Max/Min SI i derStep: x(点击箭头)y点击凹W血滑动条得'position'屈性包含向虽
[leftbottom width height]决单位ilfU n its'屈性设定。滑动条得方向取决于宽与高之比。 如果width>hei g h t,就为水平方向得滑标:反之则为垂直方向得滑动条。金 控件边框
(Frames):在图形窗口圈出一块区域q 列表框(ListBoxe s ):在其中定义一系列可供选择
得字符串;血上要屈性:S t ring value Max Min默认情况卜Max=l,M i n=0 %当Max取2. 使Max-Min>l.町以选择多项:默认悄况卜Wax-MinV=l ,只能选择单项
(1 0 )弹出式菜单(Popu P Men u s):让用户从一列菜单项中选择一项作为参血
入;1(血1)坐标轴(Axes):用丁显示图形与图細
控件对象得描述(D esc rip I ion of controller obj e Ct}d> MAT L AB 中得控件大 致町分为两种,一种为动作控件,鼠标点击这些控件时会产生相应得响应.一种为挣态控件,就是一种 不产生响应得控件,如文本框等.心每种控件都有一些可以设置得参数,用丁•表现控件得外形、功 能及效果,既屈性。屈性山两部分组成:屈性名与屈性值,它们,必须就是成对出现得=血 控制
对象得屈性包括公共屈性、基木控制屈性、修饰控制屈性、辅助屈性与callback管理屈性"3血、控 件对象得屈性(At t ribu I e s of con t r o 11 er object)
用户可以在创建控件对象时,设定其屈性值,未指定时将使用系统缺省值。b 两大类控件对象屈
性:第一类就是所有控件对象都具有得公共屈性,第二类就是控件对象作为图形对象所具有得屈性。 弧 控件对象得公共屈忤血Children取值为空矩阵「因为控件对象没有门己得子对象血 e nt 取值为某个图形窗口对象得句柄,该句柄表明了控件对象所在得血
b -fag 取值为字符串,定义了控件得标识值,在任何程序中都町以通过血
值控制该控件对象血 Type 取ffi为uicontrol,表明图形对象得类型,用户不能改写这个
屈性血 UserDa t e取值为空矩阵,用丁•保存与该控件对象相关得重耍数据与信息,用set与 get函数可以访问该屈性血Vis i b lelU值为no或off,决定空间就是否在图形窗口叮见。血B,控件 对象得基木控制屈n^BackgroundC。Io「设S控件背景颜色,取值为颜色得预定义字符或[RGB] 数值
Fore ground Color文本颜色,取值为濒色得预定义字符或[RG B]数值 CData:在控件上显示得真彩色图像,使用矩阵表示.血 Callbac k取值为字符紂町以就是
某个M文件名或1小段MATLAB语句,当
用户激活某个控件对象时,应用程序就运行该屈性定义得子程序。血Enable取值为on (缺省
值儿i nactive与of F ,当取值为on时,无论何时激 活控件对象ma t lab都执行Callback属性定义得子程序.血 0,width, h eigh t ],记录控件对象标题字符得位
S与尺寸,该屈性只能读不能写。
Max. Mill取值都为数『询St ting取值为字符串矩阵或数组,定义控件对象标题或选项内容
Sty I e取值町以就是p ushbut t 0
sHdei; frame, popup men u或listbox,山相应得值宦义控件得类型。 数输
Par 图形窗口 这个标识
Extend収值为四元索矢虽[0,
n , r a di o b utto n , ch e c kbox. edit. text. Uni I s 计S 单位,収值可以就是 p i xels, n ormali zed, inches, centime te r s
或 P oint S
Value取值可以就是矢虽,也可以就是数值,其含义及解释依赖丁控件对象得类型
C. 控件对象得修饰控制屈ttbFontAng 1 e取值为no r mal, i talic. ob 1 ique.定义字体得形态
並 FontN a me取值为控件标题等字体得字库名,必须与系统支持得字库名一致。
Fonts i ze取值为数值,定义字号
Fontweight取值为norm a I, 1 ight, d emi或bold,定义字体得粗细°血
nt取值为lef t. cen ler或r i ght,定义对齐方式
D, 控件对象得辅助屈竹血 ListboxToP取值为数虽值,定义列表框中最上方得字符串在S t r
ing屈性中得
序号.
SI i derSto p 取值为两元索餐虽[minstep, maxste T slide r 控件
S e I ected取值为on或of b SlectionHighI i g ht取值为on或o ff,决定控件对象
被选中时,就是否显示被选
中得对象。血E, Callback管理屈性
BusyAc I ion取值为cancel或queu e,决定采取得控制中断执行控件对象得
Cal I ba C k得调用方式。血 Bu t tonDo wnFun取值为字符串,一般为某个M文件
名或一小段MATLAB^ 程序金 CreateFun取值为字符串,一般为某个M文件名或
一小段MATLAB程序血 De I etFun取值为字符串,一般为某个M文件名或一小段MATLAB程序
血Handlev i sibility取值为on, ca 1 Iback或off
I nte rru P tible取值为on或ofT,决定控件对象得Callback就是否町以被随后得 b callback调用中断。血
二.GUI 开发环境(GUI Develo pment Envi ronment. GUID E )
MATLAB提供了一套可视化得创建图形窗口得工具,使用这个用户界而开发环境吋方便得 创建GUI应用程序,它町以根^(^用户设计得01^1布局』|动生成1^文件得框架,用户可使用这一框 架编制门己得应用程序"血MATLAB町视化得创建图形用户接□(GUI)工具包括:
*布局编辑器(Layout E d to r)— -------- 在图形窗口中加入及安排对象。