PowerBuilder第4讲窗口_第1页
PowerBuilder第4讲窗口_第2页
PowerBuilder第4讲窗口_第3页
PowerBuilder第4讲窗口_第4页
PowerBuilder第4讲窗口_第5页
已阅读5页,还剩58页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第4讲窗体编程教学重点教学过程教学目标了解创建窗体的基本步骤了解如何添加窗体控件了解窗体属性的设置窗体的控件调整按钮的使用2021年5月10日第2页教学重点窗体的属性设置窗体的方法和事件2021年5月10日教学过程创建窗体设置窗体属性窗体方法窗口事件2021年5月10日4.1窗口概述窗口是用户界面的最基本要素,是应用程序 的界面,应用程序通过窗口显示运行状态和窗口由4部分组成:属性、事件、函数和控件。 窗口的属性决定了窗口的外观和行为(比如 窗口类型、初始位置、是否有边框等),它 的事件说明了应用程序能够响应用户的操作 类型,它的函数为程序控制窗口提供了简洁 而安全的手段。窗口是应用程序图形界

2、面的基础,它由属性、事件、函数、控件组成,用户通过窗口及窗口上的控件和 菜单表达自己的操作意图。窗口还是其他PowerBuilder控件(比如按钮、编辑 框、数据窗口控件等)的物理载体,PowerBuilder 中的各种控件均需要放置到窗口才能发挥作用。R=i除此以外窗口是用户同应用程序之间的交互界面。 窗口可用来显示信息、请求、用户输入和响应用户 的鼠标或键盘动作2021年5月10日第7页4.2窗口类型主窗体子窗体弹出式窗体应答窗体多文档窗体多文档微帮助窗体2021年5月10日2021年5月10日第#页主窗体主窗体一般还可以称为父窗体,独立于其它任何窗体,通常作为一个应用程序的启动界面,可以

3、 有菜单、工具栏、最大化、最小化按钮等。首先创建一个Workspace,然后再创建一个 Application,在工其栏上单击新建按钮,打开 New对话框,选择PB Object选项卡,单击 Window选中图标,然后单击0K按钮,在=1Properties窗口中,可以设置窗体类型,最后保存即可。主窗口(Main Window)主窗口1=是独立的窗口,它不依赖于其它 任何窗口而独立存在,这种类型 的窗口既能够覆盖其它窗口,也 能够被其它窗口覆盖。对功能单 一的应用,通常选用主窗口作界 面基础。主以器 在可父口 是口出窗 总窗移父 . 它子分动。MT :部番它以。关,有先 祖 其 与:S口口 窗

4、需慕律 个父口可之8 一的窗奩學 另口子噩体, 于窗当的口 B 属子。内窗式移 从为口口子出口 口厝窗,醬 窗口父父时頁 子窗出有口一祖 >该移只窗S owfen nd0开不駕窗跟 伽打但,关書 W中,口,于, lild口动舅簡 ch窗移盂从在 口出内醤体而 窗弹口统口窗口 子或底-必须拥有一个主窗体。-可以有标题栏。一不能有菜单栏。-不能超出父窗体的范围。子窗体的创建同主窗体创建方法一样,只是将Properties窗口中l¥iWindowType 下拉列表 -“真,BackColor属性为Sky,运行主窗体,并边创建的mWorm圭宀上 窗体的TitleBarM性为 打开子窗体

5、。2021年5月10日第11页弹出式窗体III弹出式窗口 (PopupWindow)弹出式窗 口通常由另一个窗口打开,该窗口一般情况 下成为弹出式窗口的父窗口。弹出式窗口显 示在父窗口前面,它既可以移出父窗口,也 能够覆盖父窗口,但不能被父窗口覆盖,当 父窗口最小化时,弹出式窗口随之隐藏,父 窗口被关闭时,弹出式窗口也随之关闭。弹 出式窗口用途广泛,它可以显示文字信息, 也可以作成图形化的进度提示窗口,还能够第"页用于输入用户的选择。2021年5月10日弹口口 。窗窗 的出先 开弹祖: 打在其点 体并,特 窗体后下 他窗闭以 其出关有 过弹口具 通向曹 是指出窗 它动曩 ,自将出 码

6、点; 不焦只O 体;点 窗后< 主开曙 体在应新 窗体相重 出式执可 弹出上才-附属于其它窗体。-显示在父窗体的上面。-当父窗体最小化或关闭时,弹出窗体也会随之最小化或关闭。可以同时对父窗体和弹出式窗体进行操作。将为Popup!口咿的 WindowType 属创建弹出式fW 创建主窗体方法相同,Properties 属性窗 I应答式窗体响应窗口(ResponseWindow)响应窗口 向用户请求信息,它总是在另一个窗口 (父窗口)中打开。响应窗口被显示时, 用户必须关闭了该窗口后才能操作同一个 应用程序的其它窗口。响应窗口不能被最 大化、最小化,但可以带有控制菜单。创建应答窗体和创建主窗

7、体方法相同,只需要将Properties窗口中的WindowType类型选择设置应答式窗体主要用来提示用户输入信息,不能对 其进行最大化、最小化或改变窗体大小的操作。 当用户打开一个应答窗体后就不能在对其他窗体 进行操作,只有在关闭应答窗体后才能继续对其 他窗体进行操作。为Response!选项即可。创建一个应答式窗体, 命名为rsform,运行主窗体,并打开应答式窗体。2021年5月10日第13页多文档窗体 MDI框架窗口(MDI Frame)和带微帮助的MDI框 架窗口 (MDI Frame WithMicrohelp) MDI框架窗口及 其子窗口构成了应用程序的多文档界面风格,它有两 种

8、形式:普通的MDI框架窗口和带微帮助的MDI框架窗 口,两者的区别在于,后一种框架窗口在底部多了个 状态栏,用于显示应用程序简短的当前信息,我们将 其称做微帮助(Microhelp)。典型的MDI框架窗口由 标题、菜单、工具栏、客户区、状态栏组成。PowerBuilder开发环境使用的就是带微帮助的MDI框 架窗口。2021年5月10日第45页多文档窗体可以在一个主窗体中可以打开 多个子文档窗体,例如word程序。多文档 窗体创建方法和主窗体相同,只需要将 Properties 窗 口中的 WindowType 下拉列 表框选择Mdi!选项即可。创建多文档窗体时,必须要为它指定一个 菜单,否则

9、系统会弹出一个错误提示框。多文档微帮助窗体多文档微帮助窗体和多文档窗体非常相似, 创建方法同样是将“Properties,嘀口中的“WindowType”下拉列表框选择“Mdihelp! ”选项即可。关于多文档微帮 助窗体的创建可以参照多文档窗体的创建 方法。2021年5月10日第仃页4.3窗口事件及事件处理程序窗口对象中最常用的事件是Open、Close>CloseQuery> DragDrop、Resize 一、打开窗口的Open事件勰孵駱麟籬磁瞬辭经二、激活窗口的Active事件在激活(Active)窗口前发生,该事件发生后, 囂舉曲麟酬对矗齬鞠三、单击窗口的Clicked事

10、件用户单击窗口中空白区域时发生,窗口的空白区域指窗口内未被有效控件占据的区域,即窗口中没有可见、有效控件的地方。四、关闭窗口的Close事件窗口被关闭时发生。触发该事件后,没有办 法能够阻止窗口关闭操作。2021年5月10日第49页五、关闭窗口时的CloseQuery事件在开始关闭窗口时,发生该事件,该事件返回一个0或1的 返回值。执行该事件的事件处理程序后,系统检查返回值,如果返 回值为1,则窗口不被关闭,通常情况下紧随其后发生的 Close事件不被产生;如果返回值为0,则窗口被关闭。利用该事件的这种特性,程序能够根据当前状态提醒用户保存数据、询问用户是否真要关闭窗口。窗口被关闭时,同时关闭

11、任何与之相关的子窗口 和弹出窗口2021 年 5月 10 F!第20页问:一般用鼠标单击窗口右上角的“X”时, 窗口立即关闭,但有的程序在退出时会弹 出一个确认窗口供用户确认,这是如何实 现的? 答:可以利用窗口的CloseQuery事件 在用户关闭窗口时进行确认。在CloseQuery事件中加入脚本long ll_returnll_return=MessageBox(”提示信息",”确认 通出吗?”, Question!, YesNo! ,1) if IIeturn = 2 thenreturn 1elseReturn 0end if2021年5月10日第21页六、按键时的Key事

12、件当用户在键盘上按下一个键且插入点不在编辑区域(如单行编辑框、超文本框等)中 时发生。按任意键关闭窗口close(pare nt)思考:只有按下某一键的时候触发事件,应如何写语 句?if keydown(keyO!) then messagebox(<<dds,<< 按下的是 0 键”) end if2021年5月10日第23页七、窗口右击时的RButtonDown事件当用户在窗口客户区中任何未被有效控件 占用的部分按下鼠标右键时发生。4.4窗口函数打开窗口函数在应用程序中使用窗口的第一步工作是通过Open()蚩数打开窗口, 作。Open()函 第一种语法格式知

13、1;3總口进行各种操第25页Open ( win dowvar , pare nt)其中:参数windowvar是變显示窗口的名称,我们 可以直接使用窗口画笔中定义的窗口名;参数parent可以省略,未省略时,由该参数指定父 簞口的名称,此时,被打开窗口作为子窗口形式 出现。Open(g2021年5月劇表示打开窗口成功,返回整例如,我们用窗口画笔定义了一个窗口 w_main,那么在应用对象的Open事件 中写上代码:Open(w_main)贝j程序运 行后,窗口w_main就仝出现在屏幕上。例如:打开w_main窗口Open(w_main)第#页关闭窗口函数打开的窗口不再使用时,应该及时将其关

14、闭, 以释放系统资源。关闭窗口的工作由函数 Close()实现,其语法格式为:Close(windowname )其中:windowname是要关闭窗口的名称。该 函数返回整型值1表示关闭窗口成功,否则 返回值为/O针对前面小节示例中打开的窗口w_main,需要 关闭时,在事件处理程序中写上语句: Close (w_main)即可。例如:关闭w_main窗口2021年5月10日第27页Close(w_mai n) 例如:关闭父窗口Close(pare nt)2021年5月10日第28页4.5创建窗口 一、创建新窗口单击"File|New,J菜单,在出现的“New”窗口中选 择“PB

15、Object”选项页中的Window对象图标,在 PowerBuilder中将显示一个窗口画板,其申有一个 表示新建窗口的网点状矩形。二、窗口画笔概述在窗口画板上端的工具栏中有一些常用的图标,下 面简要的介绍它们的意义。PainterBarIX 具栏第29页第29页第29页中控所 口有把 窗所就拉上击 下口单 在窗上 ,到区 作 箭放工 的够口-边能窗上 右是在口 标中后窗 H 该列,置 击,韓 橐图件 。列書 was H 列控择所 件出黎 控示。圏 :显拡-编。种莠序多。 脚理口设码件,框 Fl« 开写属对81 中 ,件程 后事誓亂过 輛中开曲计。 图应口打)7设O rc *u r

16、tk nb 口果击要及后Ta窗效 单需M (在的 。对口按转。时 标中屬跳标行 图口書的图运 写窗畫件口口 编该聶控窗窗 码在置通置览看 代,设可设预査 口 均 标2021年5月10日第31页4.6窗口属性窗口属性定义窗口的外观、行为和状态, 窗口属性设置对话框有4个标签分别对应4 个属性选项页,通过单击标签选择所需的 属性。如下图:2021年5月10日第#页Gener-al Scroll | Toolbar | Cither M emub-J 曰meFVisibleE nbledT itleB ar|y ComtrolM enuiI M axB ox|x M imB ohI CliemtE

17、dqe|尸 sletteA/iriiciouM| ContextH elpI FS ightT ol_ef tIS Center|y F8 esisizileB order"MvimdowT| main!"MvimdowS tte| normal!B ck_Color|M enu T extM E? IUlient UqIcit|也口口lic: =itiori -v'ork.s口muwI con|厂i 戶G 戶=;口i仁 一 展卅 一般属性在General选项页中设置,如上图所示。本页中可以败置的属性根据所选窗口类型的不同而 臨呆雜鶴缠寵 明该类型的参加窗口不具 T

18、itle:定义看口的葆题,斯建的窗口标题为“Untitled”; Tag:主要针对mdihelp类型窗口,可以输入一个与 窗口相关的字符串;这个字符串在一些需幽地方可能会被使用,比女l 时它显示在窗口型农奄拦上作为堤垂omousemove事件中输入如下代码:this.SetMicroHelp(this.tag)2021年5月10日第33页 Visible:指定窗口的可见性; MenuName:决定窗口是否具有菜单,为空时说明没有 菜单,否则该编辑框的内容就是菜单的名称。 Enabled:决定窗口是否能够接收和发送事件,它不影响 窗口的可见性。 ControlMenu> MaxBox>

19、; MinBox:分别指定在窗口的 标题栏上是否显示控制菜单按钮、最大化按钮、最小化按 钮,选中时相应的按钮出现在窗口的标题栏; WindowType:指定窗口类型; Icon:指定窗口图标。 2.其他属性窗口的属性设置对话框还有另外3个选项页。 Scroll选项页设置窗口的滚动方式。他有2个 复选框:“HScroll Bar” 和"Scroll Bar”, 选中“HScrollBa严复选框,就会在窗口上 增加水平滚动条;选中“VScrollBar”复选 框,就会在窗口上增加垂直滚动条。该选项 的另外4个编辑框用来设定每次单击滚动条窗 口工作区移动的多少。设置滚动条翩&營歸辭

20、耐常擁 如下:槪翩隸口撤鬆執黛动条。属性值为mSISI否则为希时不薜动条。属性值为时叽设置垂直滚动条的垂直滚动的单位,属性的缺省值UnitPerColumn设置水平滚动条的水平滚动的单位。属性的缺省 值知。ColumnsPerPage设置窗体中每页可以显示多少列。缺省值为0。 LinesPerPage设置宙体中每页奇以匾示多少行。旗省值为0。2021年5月10日第37页 ToolBar选项页设置窗口中工具栏的初始位 置。“Visible”复选框指定工具条是否可 见;“Alignment”组框指定工具栏显示位 置。 Other选项页设置窗口在屏幕中的位置和鼠标的现状设置工具栏属性在Propert

21、ies窗口中的Toolbar选项卡中可以设置窗体上-ToolbarVisible设置窗口中的工具条是否显示出来。属性值为 True时显示,否则为False时不显示。- ToolbarAlignment丧置工具条在一个MDI窗口中的显示位置。-ToolbarX设置当工具条以窗口方式浮动显示时工具条窗口左上角 距MDI窗口左边界的距离。用于MDI窗口。-ToolbarY设置当工具条以窗口方式浮动显示时工具条窗口左上角 距MDI窗口上边界的距离。用于MDI窗口。-Toolbarwidth设置当工具条以窗口方式浮动显示时工具条窗口的 宽度。用于MDI窗口。-ToolbarHeiqht设置当工具条以窗口

22、方式浮动显示时工具条窗口 的高度。用TMDI窗口。4.7保存、预览、运行窗口 一、保存窗口 单击PainterBarll具栏上的“Save”图标即可。二、预览窗口 单击PainterBarIZC具栏上的"Preview”图标即 可。三、运行窗口单击PowerBarl工具栏上的“Run”图标即可。2021年5月10日第41页38窗口设计实例(p52)【例3.1】设计一个窗口应用程序, 运行程序时打开主窗口,在主窗口中单 击鼠标右键后,每隔5s弹出一个消息对 话框,再次单击右键则停止弹出消息对 话框;在主窗口中单击鼠标左键就弹出 一个响应式子窗口。该应用程序的具体实现步骤如下。1.建立工

23、作空间和应用建立一个新的工作空间利应用 exwin (创建方法参见第1章中1.2简单应 用程序实例)。 w_re5pv/in in hrritSJ |General scroll I Toolbar I OtherTitle 3 ViablePI Enabled 叼 HteEar0 ControlMenu MinBoxII Clien£dgerl ContcxUdp ightToleft H Ceiterresponse!*zchild! man! end! mdhelp popup!Vi ' esiz3beP13ordcr v/irdcAype图3.12选择窗口类型2021年5月10日第43页2. 建一个主窗口对象建一个主窗口对象,设置窗口对象的General属性页中Title为“应用程序主窗口”,窗口 类型为main!,保存窗口名称为w_mainwino再创建一个响应式窗口,设置窗口对象的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论