第7章控件精选文档.ppt

上传人:石*** 文档编号:87332993 上传时间:2023-04-16 格式:PPT 页数:84 大小:3.12MB
返回 下载 相关 举报
第7章控件精选文档.ppt_第1页
第1页 / 共84页
第7章控件精选文档.ppt_第2页
第2页 / 共84页
点击查看更多>>
资源描述

《第7章控件精选文档.ppt》由会员分享,可在线阅读,更多相关《第7章控件精选文档.ppt(84页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第7 7章控件章控件本讲稿第一页,共八十四页教学目标了解控件的基础知识熟悉这些常用控件的使用方法和属性熟练地使用常用的控件本讲稿第二页,共八十四页教学重点常用控件的使用方法控件的属性本讲稿第三页,共八十四页教学过程控件概述 按钮控件 文本框控件图形类控件 Tab控件 列表类控件树形视图控件列表视图控件滚动控件数据窗口控件本讲稿第四页,共八十四页第七章 控件PowerBuilder提供了丰富的标准控件,利用这些控件,开发人员可以实现对窗口的设计和编程,还可以完成应用程序开发的大多数功能。PowerBuilder为插入的控件自动命名,开发人员可以修改这些控件,以方便应用程序的开发。另外,还可以进

2、行控件布局,以及定义控件的快捷键等。本讲稿第五页,共八十四页第七章 控件1.窗口控件的种类2.添加控件3.窗口控件的布局调整4.显示隐藏的控件5.窗口控件的通用属性6.常用的窗口控件7.编程实例本讲稿第六页,共八十四页窗口控件的种类按钮类显示类输入类进度条类对象类分组类装饰类命令按钮图片按钮静态文本超连接图片超链接复选框单选按钮静态文本图片统计图下拉列表框下拉图片列表框列表框列表视图图片列表框树状视图单行编辑框编辑掩码控件多行编辑框RichText编辑框垂直滚动条水平滚动条水平跟踪条垂直跟踪条数据窗口控件OLE控件用户对象分组框选项卡直线椭圆矩形圆角矩形本讲稿第七页,共八十四页7.1 在窗口上

3、放置控件 执行“Insert|Control|控件名称”菜单项,或者在窗口画板工具栏上的控件工具箱中选择一种控件图标,在窗口中单击要放置该控件的地方,即可将控件加入窗口中。控件工具箱中的图标如图所示。鼠标指向控件图标时,会出现相应的控件名称。本讲稿第八页,共八十四页7.2控件的命名规则控件不得重名。控件名称由两部分组成:默认前缀和名称。默认前缀pb有规定,可以自己修改默认前缀。本讲稿第九页,共八十四页7.3 操控控件1、选择控件利用鼠标单击、Ctrl、鼠标拖动2、移动控件选中控件,用鼠标拖动控件可以将控件移动到指定位置,也可以用键盘上的移动光标键移动控件。3、改变控件大小选中控件,用鼠标拖动控

4、件的边框可以改变控件的大小,或者按住【Shift】键的同时,使用移动光标键也可以改变控件大小。本讲稿第十页,共八十四页4、删除控件用Del键,或使用菜单5、对齐控件当插入控件后,就可以在布局工具中对控件进行排列和对齐操作,PowerBuilder提供了一个网格(grid)用于对齐控件。对齐控件的方法为:选择要对齐的控件,然后按住“Ctrl”键,并单击需要同第一个对齐的控件。然后在菜单栏中选择“Format”|“Align”菜单项中的命令,或者在工具栏的布局下拉列表框中选择对应的对齐方式。本讲稿第十一页,共八十四页6、复制粘贴控件7、定义控件的Tab属性Tab值决定了默认情况下程序运行后用户按键

5、时输入焦点的跳转次序。修改跳转次序的步骤为:(1)从format菜单中选择“Tab Order菜单项,或单击工具条上的对应图标,系统显示各控件的Tab值。(2)通过鼠标单击控件或按Tab键,将输入焦点移动到要修改Tab值的控件上。(3)输入新的Tab值。(4)再次单击Tab Order 菜单项,返回窗口设计状态。注意:tab值为0表示用Tab键移动输入焦点是将跳过该控件。本讲稿第十二页,共八十四页8显示隐藏的控件对于程序运行时不需要显示的控件,可以在设计窗口时不选中该控件的Visible属性,这样就能使窗口上不显示该控件。执行Design|Show Invisibles菜单,系统将显示被隐藏的

6、控件。改变控件可视性更好的方法是,通过脚本让程序运行时动态设置Visible属性的值。本讲稿第十三页,共八十四页7.4 设置控件的共有属性名称和标题快捷键先单击控件,然后在其属性视图“General”选项卡中的“Text”文本框中,在字符前面加入“&”符号即可定义快捷键。Visible属性Enable属性前景色和背景色边界Border和边界类型BorderStyle属性控件的指针类型和拖动图标本讲稿第十四页,共八十四页7.5 常用控件介绍1.按钮选项卡2.选项按钮3.文本显示与编辑控件4.图像控件5.画图控件6.滚动控件7.列表类控件8.树形视图控件9.列表视图控件10.标签控件11.数据窗口

7、控件12.统计图控件13.OLE控件14.用户对象控件15.超链接类控件本讲稿第十五页,共八十四页7.5.1 按钮按钮是一种常用控件,用于完成一种特定操作。PowerBuilder提供了2种按钮:命令按钮和与图像按钮。1 命令按钮 2 图像按钮本讲稿第十六页,共八十四页1 命令按钮命令按钮(CommandButton)是标准的Windows按钮,带有一个指示按钮功能的标签。命令按钮总以三维形象显示,它没有边框属性,不能修改按钮标签的字符颜色和背景颜色。命令按钮的Text属性指定按钮标签,Default属性指定是否为默认按钮,Cancel属性指定是否为取消按钮。命令按钮的主要事件是Clicked

8、事件,当用户单击按钮时触发该事件。本讲稿第十七页,共八十四页2 图像按钮图像按钮(PictureButton)是可以显示BMP、RLE或WMF格式图像的命令按钮,通常带有2种不同图像分别表示按钮有效和无效状态。当PictureButton的Enabled属性为true时,显示PictureName属性指定的图像;当Enabled为false时,显示DisableName属性指定的图像。OriginalSize属性指定按图像按钮本身的大小显示图像,否则按图像大小自动调整图像按钮的尺寸。本讲稿第十八页,共八十四页7.5.2 选项按钮在一组状态中进行选择的方式有2种:单项选择和多项选择。1单选钮2复

9、选钮3组框本讲稿第十九页,共八十四页1单选钮单选钮(RadioButton)用来显示一组互斥的选择。同一组单选钮中,任何时候最多只能有一个被选中。一旦选中一个单选钮,则前一个选中的单选钮会自动变为未选中状态。判断各单选钮是否同组的依据是,它们是否被置于同一个容器中。本讲稿第二十页,共八十四页2复选钮复选框(CheckBox)是一个带标签的方框,方框中打勾号表示选择,表示不选择。鼠标单击可改变它的状态。复选框选中与否的状态用Checked属性表示。当Checked属性值为true时,复选框为选中状态(),当Checked为false时,是未选中状态(),默认值是false。复选意味着可以有几个复

10、选框同时被选中,即每一个复选框状态的改变,并不影响其他复选框的状态。本讲稿第二十一页,共八十四页3组框组框(GroupBox)有两个用途:一是装饰界面,二是对单选钮分组。单选钮、复选框的分组通过组框来实现,因此,我们通常看到的界面中,组框与单选钮、复选框常常结伴而行。组框的分组作用只对单选钮有效,对其他控件,组框只起到装饰效果。本讲稿第二十二页,共八十四页7.5.3 文本显示与编辑控件1静态文本框2单行编辑框多行编辑框3掩码编辑框4超文本编辑框本讲稿第二十三页,共八十四页1 静态文本框静态文本框控件只用于显示文本信息,不允许输入和修改文本信息,但是可以在设计时或者在脚本代码中更改要显示的信息。

11、一般用于显示一些操作提示或者反馈信息。除了常规属性,静态文本在General页上的主要属性有Name、Text、Border、BorderStyle、Alignment、BorderColor、FillPattern等。本讲稿第二十四页,共八十四页2单行编辑框和多行编辑框单行编辑框和多行编辑框一般用于输入或输出数据,单行编辑框中只能输入或输出一行数据,多行编辑框可以输入或输出多行数据。在文本框中会有一个光标指示控件的焦点。单行编辑框和多行编辑框共同的属性如下:(1)Password选项,一般选择该项是为了在输入密码时,不让输入的信息在屏幕上显示出来,屏幕上显示的只是星号(*)。(2)AutoH

12、Scroll:选择该项可使用户输入更长的字符串,当输入的字符超过右边界时,文本会自动向左滚动。(3)DisplayOnly:选择此项只能显示数据,不能输入数据。(4)TextCase:限制控件只能接受大写字母(upper!)、小写字母(lower!)或大小写都可以(anycase!)。如选择lower!,则只能接受小写字母,若输入了大写字母,则自动转换为小写字母。(5)Limit:控件中可以输入的最多字符数。0表示不限制输入的字符数。(6)HScrollBar和VScrollBar:在控件内部显示水平滚动条和垂直滚动条。(7)AutoVScroll:当输入的行数超过屏幕所能显示的行数时,控件内

13、的行自动向上滚动。本讲稿第二十五页,共八十四页3 掩码编辑框掩码(Mask)是指带格式的数据。掩码编辑框(EditMask)是一种按照指定格式输入并显示数据的单行编辑框控件。掩码编辑框在Mask属性页上指定数据的格式,可带格式的数据类型有数值型、字符串和日期时间值。在使用掩码编辑框时,有时要用到以下选项:(1)Mask:决定数据输入的格式,可以输入Mask选项或空白。(2)Spin:选择该项在编辑框的右边显示一个上下箭头(微调按钮),单击上下箭头数据按指定的间隔增大或减小。(3)Increment:单击微调按钮数据之间的间隔。(4)Min、Max:微调按钮输入数据的变化界限。(5)UseCod

14、eTable和DisplayData:这两个属性结合使用,它们只在Spin被选中时才能起作用。它们表示输入的数据是有规律的,按固定表中的数据选择输入。掩码编辑框的事件有十几个,最重要的事件有Modified事件、GetFocus事件和LoseFocus事件,事件的触发类似于单行编辑框。本讲稿第二十六页,共八十四页3 掩码编辑框设置mask属性如下图所示:本讲稿第二十七页,共八十四页4 超文本编辑框(RictTextEdit)RichTextEdit是一个功能强大的编辑框,它可以使用Windows系统支持的所有字体、字型及颜色,有自己的工具栏和标尺,还能够输入、编辑、格式化以及保存与打印文本。、

15、RichText的属性在属性页的Document标签页,可以设置属性。RulerBar、TabBar、ToolBar:设置标尺、Tab条和工具栏是否显示。HeaderFooter:指定是否加上题头/脚注节。PopupMenu:选中时,用户通过右击可以打开用于编辑的弹出式菜单。ReturnsVisible:选中时,系统显示换行字符。SpacesVisible:选中时,系统以字符.来显示用户输入的空格字符。本讲稿第二十八页,共八十四页TabsVisible:选中时,系统显示tab字符。InputFieldsVisible和InputFieldNamesVislble:设置输入域是否可见,输入域名字

16、是否可见。WordWrap:设置是否具有自动换行功能。PicturesAsFrame:选中时,插入到超文本编辑框的图形将显示为图标,否则显示为图像本身。InputFieldBackColor:设置输入域的背景色。UndoDepth:指定用户能够取消最近操作的最大深度。LeftMargin、RightMargin、TopMargin、BottomMargin:指定打印页的左、右、上、下边界。本讲稿第二十九页,共八十四页、RichText的事件FileExists:在RichText控件中保存文件时,如果文件已经存在,则触发。InputFieldSelected:在RichText控件中双击输入框

17、或在其上按回车键时触发。Modified:RichText被修改时触发。GetFocus:RichText控件得到焦点时触发。LostFocus:RichText控件失去焦点时触发。本讲稿第三十页,共八十四页、RichText编辑框控件的函数SaveDocument(filename,filetype):将RichText控件中的内容以rtf或txt格式保存起来。SelectText(fromline,fromchar,toline,tocharband):在RichText控件中选择特定位置的一段文本。InputFieldInsert(inputfieldname):在RichText控件中

18、添加一个输入框。Undo():取消最后一次修改操作。InputFieldGetData(inputFieldname):获取RichText控件输入框中的数据。InputFieldCurrentName():获取RichText控件中得到插入点的输入框的名称。本讲稿第三十一页,共八十四页、RichText编程实例使用RichText控件实现文档操作。在窗口放一个数据窗口控件Dw_xs,与学生信息数据窗口对象关联,并设为不可见。在窗口的open事件中有代码:dw_1.settransobject(sqlca)dw_1.retrieve(%)rte_1.DataSource(dw_1)本讲稿第三十

19、二页,共八十四页在“插入输入框”按钮有代码:rte_1.inputfieldinsert(name)rte_1.DataSource(dw_1)在“下一个”按钮有代码:rte_1.scrollnextrow()在“打开”按钮有代码:rte_1.insertdocument(d:myf.txt,true,FileTypeText!)在“打印按钮有代码:rte_1.print(1,FALSE,TRUE)在“保存按钮有代码:rte_1.savedocument(d:myf.txt,FileTypeText!)在“预览”复选框有代码:if this.checked thenrte_1.preview(

20、true)elserte_1.preview(false)end if本讲稿第三十三页,共八十四页7.5.4图像显示控件图像(Picture)显示控件既可以显示多种系统图标,也可以显示BMP、GIF、JPG、RLE、WMF等格式的图像文件。其PictureName属性指定一个系统图标或图像文件,OriginalSize属性指定是否图像按原始大小显示。本讲稿第三十四页,共八十四页7.5.5画图控件画图控件(drawing control)用于显示图形。图形类控件通常用于增强界面的显示效果,例如使用直线将窗口中的控件分隔或者用矩形控件为窗口划分区域等。图形类控件也可以当作其他控件使用,例如对矩形控

21、件编写Clicked事件代码后,这个矩形控件就具有了命令按钮的功能了。这类控件共有4种:直线(Line)、椭圆(Oval)、矩形(Rectangle)和圆角矩形(RoundRectangle)。本讲稿第三十五页,共八十四页直线控件在窗体的主要作用是对窗体中不同的控件进行分隔。椭圆控件在窗口中可以起到装饰页面的作用。矩形控件用来画一个矩形,以分割界面或增强界面效果。圆角矩形控件用来画一个带有圆角的矩形,可以设置圆角矩形的线型、颜色、长、宽等。本讲稿第三十六页,共八十四页7.5.6滚动条PowerBuilder提供了2种滚动条控件:水平滚动条(HScrollBar)和垂直滚动条(VScrollBa

22、r)。滚动条可以调整窗口显示的位置。常用属性:常用属性:MinPosition和MaxPosition属性分别指定滚动条变化范围的最小值和最大值Position属性指定滚动条滑块的当前位置值。StdHeight复选框:用来决定是否将滚动条设置为Windows的标准高度。常用事件:常用事件:LineLeft:当用户点击水平滚动条的左箭头时触发。LineRight事件:当用户点击水平滚动条的右箭头时触发。LineUp:用户点击垂直滚动条的上箭头时触发。LineDown:用户点击垂直滚动条的下箭头时触发。PageLeft:用户点击水平滚动条滑块的左区域位置时触发。PageRight:用户点击水平滚动

23、条滑块的右区域位置时触发。PageUp:点击垂直滚动条的相应位置触发。PageDown:点击垂直滚动条的相应位置触发。Moved:当用户按住鼠标左键不放拖动滑块时触发。本讲稿第三十七页,共八十四页7.5.7 列表选择类控件当需要选择的数据项较少时,可以使用前面介绍的复选框和单选钮。如果有很多数据项,可以使用列表框。1 列表框2 图像列表框3 下拉列表框4 下拉图像列表框本讲稿第三十八页,共八十四页1列表框列表框是在一个可滚动的矩形框内显示多行文本,用户可以选择其中一行或多行。在列表框中的某一数据项上单击,则选中该数据项,被选中的数据项以高亮度显示。1)常用的属性设置)常用的属性设置Genera

24、l标签页中标签页中Sorted复选框:用来决定列表框中各项文本是否按顺序重新排列。HScrollBar和VscrollBar:决定是否在需要时显示水平和垂直滚动条。ExtendedSelect复选框:决定是否可以一次选择多行,多行选择可通过鼠标拖动、选择一项后再按住Shift键选择另一项,最终选择一个连续区域、或选择一项后再按下ctrl键选择不连续的选项,三种方法均可。本讲稿第三十九页,共八十四页MultiSelect复选框:决定是否可以通过鼠标单击的方法选择多项,而不需要用ctrl或shift键同时操作。DisableNoScroll复选框:指定列表框上滚动条的行为。Items标签页中标签页

25、中Item用于指定列表框中显示的列表项,可以在运行前事先指定,也可通过脚本插入列表项,插入方法为:列表框名称.insertitem(文本行字符串,index)该语句表示在列表框的第index行之前插入一项内容为“文本行字符串”,系统给所有列表项一个唯一的索引index,用它来区分各个列表项。本讲稿第四十页,共八十四页2)常用事件介绍)常用事件介绍 SelectionChanged事件用户选择了列表框中的一个列表项之后,就会触发该事件,若通过鼠标完成项目的选择,则还会触发列表框的Clicked事件。SelectionChanged事件只有一个参数index,它是一个整数,用来表示新选择的列表项的

26、索引号。SelectionChanged事件只有一个返回值0,表示继续操作。DoubleClicked事件当用户双击列表框中的列表项时,会触发DoubleClicked事件,同时还会触发SelectionChanged事件。该事件的参数及返回值同SelectionChanged事件。本讲稿第四十一页,共八十四页3)常用函数additem(string item):在列表项的尾部增加一个新的列表项item。返回值为integer,新加入项的索引号。deletetiem(int index):删除指定的列表项index。其中index为要删除列表项的位置编号。selectedindex():返回列

27、表框控件中所选列表项的索引。当有多个列表项被选中时,该函数返回第一个被选中的索引。selecteditem():返回列表框控件中所选列表项的文本。当有多个列表项被选中时,该函数返回第一个被选中的文本。text(int index):返回列表框中指定列表项index的文本。totalitems():返回列表框中列表项的总数。totalselected():得到列表框中选定列表项的总数。本讲稿第四十二页,共八十四页state(int index):确定列表框中某index项是否被选中。如果index指定的列表项处于选中状态,则函数返回1,否则返回0。如果index指定的不是一个有效的列表项,则函数

28、返回-1。insertitem(string item,int index):在指定索引index指示的列表项前插入一个新项item。selectitem(string item,int index):从index开始查找以item开头的项目,如找到则选中该项,并返回选中项的索引。setstate(int index,boolean state):设置index项为高亮度或取消高亮度。State值为true,设置高亮度,false取消高亮度。Index=0表示所有项。finditem(string text,int index):在项目列表中查找指定索引index后面与指定串text匹配的列表

29、项。本讲稿第四十三页,共八十四页2图片列表框图片列表框与列表框基本相同,唯一的区别是列表框中的列表项只有文本显示,而图片列表框的列表项除了显示文本外,还在文本之前加了一个小图标。图片列表框的属性视窗比列表框多了一个Pictures标签页,在Items标签页中多了一个PictureIndex项。其Pictures属性页上的PictureName属性可以指定列表框所带的多个图像。Items属性页上的Item属性是一个结构数组,每个数组元素由Text和Picture Index组成,Text指定列表项的显示文本,Picture Index指定所需图像在PictureName属性中的序号。使用Addi

30、tem、Insertitem、Deleteitem函数可以完成列表项的添加,使用Addpicture、DeletePicture、DeletePictures可以添加删除图片。Selecteditem函数返回用户选中的列表项。本讲稿第四十四页,共八十四页3下拉列表框 下拉列表框(DropDownListBox)是单行编辑框和列表框的结合体,既可在编辑框中输入数据,也可在其下拉列表框中选择数据项。主要属性:AllowEdit属性指定是否可编辑;HScrollBar和VScrollBar指定是否在需要时显示水平、垂直滚动条;AutoHScroll:该属性是针对单行编辑框部分而言,选中表示当文本长度

31、超过单行编辑框的长度时,文本自动向左滚动。ShowList:选中表示,下拉列表框的选项列表总显示在窗口上。否则,只有当用户单击下拉列表框上的箭头时才显示选项列表。本讲稿第四十五页,共八十四页4下拉图片列表框 与图片列表框类似,下拉图片列表框(DropDownPictureListBox)中的每个数据项前都带有一个图标。事件简介:下拉列表框的事件是列表框和单行编辑框事件的组合。其中最重要的事件是SelectionChanged事件、Modified事件和Doubleclicked事件。SelectionChanged事件:只有用户从下拉式列表框中选择列表项时才会触发,在编辑框中进行输入不会触发这

32、个事件。Modified事件:在下拉列表框处于可编辑状态下才能触发;否则就不能触发。触发顺序为:先SelectionChanged事件,后Modified事件。Doubleclicked事件:在下拉列表框的ShowList属性为True时才会被触发,否则不会触发。本讲稿第四十六页,共八十四页列表框类控件的通用属性:属性说明DisableNoScroll选中时,始终显示滚动条ExtendedSelect允许用户同时选中多个项目,允许时可以按下Shift键后单击鼠标选中连续多项,或按下Ctrl键后单击选中不连续的多项,或拉出矩形框选中框内多项。Sorted指定列表框中的列表项是否自动按升序排列Mu

33、ltiSelect允许用户同时选中多个项目,但只能通过鼠标单击来选择AllowEdit允许在编辑框中编辑ShowList使下拉列表框变为列表显示,失去下拉功能Item用于输入列表框中的项目本讲稿第四十七页,共八十四页列表框常用事件列表框类显示的项目,既可以在“items”属性页的列表框中直接输入,也可以在程序中使用Additem函数来添加。列表框类的常用事件有Constructor、DoubleClicked、SelectionChanged等。本讲稿第四十八页,共八十四页5列表框控件编程实例例:在两个列表框之间交换选择数据。本讲稿第四十九页,共八十四页7.5.8树形视图控件TreeView具

34、有层次关系的树形结构是一种常用的数据存储和显示方式。就像Windows资源管理器左部的目录列表那样,PowerBuilder的系统树窗口也是以树形视图显示工作区、目标、库和应用等对象及其层次关系的。树形视图(TreeView)控件用于存储和显示具有层次关系的数据项。本讲稿第五十页,共八十四页 1树状视图常用属性系统的资源管理器的目录就是使用树状视图的典型例子。树状视图命名时的默认前缀为tv_。树状视图常用属性:EditLaels:若选中该选项,则用户能够编辑列表框的标题,否则不能编辑。HasButtons属性:指定是否在父节点列表项前显示“+”和“-”按钮,取值为True或False。用户单击

35、“+”按钮时将扩展列表项,单击“-”按钮时将折叠列表项。HasLines属性:指定是否用连线把列表项连接起来,取值为True或False。LinesAtRoot属性:指定是否使用连线连接所有根节点,取值为True或False。DeleteItems:选中时,用户能够使用Delete键删除树形视图控件中选中的列表项,否则用户不能删除列表项。本讲稿第五十一页,共八十四页DisableDragDrop:选中时表示不能对列表项执行拖放操作,否则用户能够拖放列表项。HideSelection:选中时,即使树形视图控件失去焦点,选中的列表项依然加亮显示,否则,当失去焦点时,选中的列表项恢复常态,不再加亮显

36、示。ToolTips:指定当条目的标题超出控件的右边界时,是否在小提示条中显示完整标题。CheckBoxs:指定是否以检查框代替状态图形。TrackSelect:指定当鼠标划过某项目时,是否以不同颜色显示。FullRowSelect:指定是否可以进行整行选定。本讲稿第五十二页,共八十四页SingleExpand:指定是否只有选中的树形控件的项目才允许展开。Indent属性:值为Integer类型,指定下层节点(列表项)的缩进宽度,以PBU为单位。可以使用负值,此时节点被缩进到该控件的边界外边。SortType属性:取值为枚举类型,指定列表项按标题名排序的方式。有效取值为Ascending!、D

37、escending!、UserDefined!、Unsorted!。指定UserDefined!时,程序运行时将会触发树形视图控件的Sort事件。PictureName:是string型数组,该控件使用的图像文件名。可以在创建树状视图时,通过其Picture属性页加入这些图像文件。除需要加入图像文件外,一般不改变树状视图的属性。本讲稿第五十三页,共八十四页2树状视图常用事件树状视图常用事件:BeginDrag:当用户在树形视图控件的某个列表项的标题上按下鼠标左键并开始拖曳鼠标时触发,该事件中的参数handle是被拖曳列表项的句柄。BeginLabelEdit:当用户开始编辑某个列表项的标题时触

38、发。设置该事件的返回值为1可以禁止用户编辑该列表项的标题,返回值为0时允许用户编辑。BeginRightDrag:当用户在树形视图控件的某个列表项的标题上按下鼠标右键并开始拖曳鼠标时触发。Clicked:当在树形视图控件上单击鼠标时触发。Deleteitem:删除列表项时触发。doubleclicked事件:鼠标双击时触发。EndLabelEdit:当用户结束某个列表项标题的编辑时触发。本讲稿第五十四页,共八十四页ItemCollapsed事件:在某个列表项被折叠后触发。ItemCollapsing事件:在某个列表项要被折叠时触发。该事件返回1阻止被折叠,返回0完成折叠。ItemExpande

39、d事件:在某个列表项被展开后触发。ItemExpanding事件:在某个列表项要被展开时触发。该事件返回1阻止被展开,返回0完成展开。如果程序中希望每次展开列表项时填充该列表项下的子项,那么可通过编写该事件的事件处理程序来完成。如果列表项没有子项,那么就不能被展开。ItemPopulate事件:当第1次展开某列表项时触发,该事件返回1阻止被展开,返回0完成展开。如果列表项没有子项,那么就不能被展开。本讲稿第五十五页,共八十四页Selectionchanged事件:在用户选择新的选项后触发。该事件是树状视图比较常用的事件。SelectionChanging事件:当用户选择新的选项时触发,该事件返

40、回1阻止用户改变当前选项,返回0允许用户改变当前选项。Sort:当使用参数UserDefinedSort!调用函数sort时触发。并且每做一次比较都会触发该事件。利用该事件,开发人员可以自己定义排序次序。rightclicked事件:鼠标右击时触发。本讲稿第五十六页,共八十四页 3树状视图常用函数树状视图常用函数:(1)添加树形视图列表项1)Insertitem函数格式:Insertitem(handleparent,handleleafer,label,pictureindex)Insertitem(handleparent,handleleafer,item)在handleleafter项

41、后面插入一个列表项,并使handleparent项称为当前项的父项。返回值为long。函数执行成功时返回新插入列表项的句柄,发生错误时函数返回-1。2)InsertitemFirst函数格式:Insertitemfirst(handleparent,label,pictureindex)或Insertitemfirst(handleparent,item)该函数在指定父节点的层中的第一个位置插入列表项。本讲稿第五十七页,共八十四页3)InsertltemLast函数 格式:InsertltemLast(handleparent,label,picmreindex)或InsertitemLast

42、(handleparent,item)在指定父节点的层中的末尾加入新节点。其中,handleparent:指定要插入列表项父节点的句柄。label:新插入列表项的标题。pictureindex:新插入列表项使用的图片索引。发生错误时返回-1。4)InsertitemSort函数该函数以排序方式在指定父节点的层中插入列表项。语法格式:InsertltemSort(handleparent,label,picmreindex)或InsertitemSort(handleparent,item)树形视图的每个数据项都是个TreeViewItem对象,它包括了一组属性,各属性的意义如下:本讲稿第五十八

43、页,共八十四页属性名数据类型用途与意义DataAny开发人员希望与数据项一起保存的任何数据BoldBoolean指定是否以黑体字形式显示各结点的文本ChildrenBoolean指定当前项是否带有子项CutHighLightedBoolean指定如果当前项是剪切操作的操作对象,该项是否加亮显示。DropHighLightedBoolean指定如果当前项是拖放操作的操作对象,该项是否加亮显示ExpandedBoolean指定当前项是否能进一步展开。ExpandenOnceBoolean指定当前项是否被至少扩展一次HasFocusBoolean指定当前项是否得到焦点ItemHandleLong引用

44、当前项的唯一编号LabelString当前项的显示文本LevelInteger当前项在树形视图层次结构中的层数OverlayPictureIndexInteger当前项使用的重叠图像索引号。PictureIndexInteger图片索引号,相应图片显示在该项标题的左边SelectedPictureIndexInteger用于指示当前项被选中的图片的索引SelectedBoolean指示当前项是否被选中StatePictureIndexInteger该项使用的状态图像列表中的图片索引号本讲稿第五十九页,共八十四页(2)删除树形视图列表项Deleteitem(itemhandle)删除树形视图控件

45、中指定的列表项。如果该列表项还有子项,则子项一同被删除。当ItemHandle值为0时,删除所有列表项。(3)查找列表项的句柄Findltem函数。格式:Findltem(navigationcode,itemhandle)根据列表项位置返回指定列表项的句柄,失败时返回-1。其中:itemhandle为开始查找的列表项的句柄,long型。Navigationcode为要查找的节点,枚举类型,取值如下:RootTreeltem!:根节点。NextTreeltem!:与itemhandle列表项同一个父节点中同一层的下一个列表项。PreviousTreeltem!:与itemhandle列表项同一

46、个父节点中同一层的前一个列表项。ParentTreeltem!:itemhandle列表项的父节点。ChildTreeltem!:itemhandle节点的第一个子列表项。本讲稿第六十页,共八十四页FirstVisibleTreeItem!:找出树形视图控件当前可视区域中显示的第一个列表项。NextVisibleTreeItem!:找到itemhandle之后的下一个已展开列表项。PreviousVislbleTreeItem!:找到itemhandle之后的前一个已展开列表项。CurrentTreeltem!:当前所选列表项。DropHighlightTreeItem!:找出DropHigh

47、lighted属性最近被设置为true的列表项。例如,得到树状视图控件中当前所选项的句柄:longtv_curt tv_curt=tv_1Findltem(CurrentTreeltem!,0)例如,如果想展开树状视图控件中的所有列表项,那么以根节点的句柄为参数调用ExpandAll()函数:long tv_rt tv_rt:tv_1Findltem(roottreeitem!,0)/查找根节点的句柄 tv_1ExpandAll(tv_rt)/展开所有节点本讲稿第六十一页,共八十四页(4)其他常用函数AddPicture函数。格式:AddPicture(string picturename)在

48、图像列表中增加图片文件,返回值为新加入的图片文件索引号。deletePicture函数删除指定图片。Deletepictures删除图像列表中的所有图片。Collapseltem函数。格式:Collapseltem(long itemhandle)折叠指定的列表项(节点)。itemhandle:要折叠的列表项的句柄(一个长整数,每个节点都有一个惟一代表该节点的句柄)。成功时返回1,失败时返回-1。EditLabel让itemhandle指定的列表项处于编辑状态。ExpandAll函数。格式:ExpandAll(long itemhandle)展开指定列表项(节点)的所有各级子项(子节点)。it

49、emhandle:要展开各级子项的列表项的句柄。本讲稿第六十二页,共八十四页Expandltem函数。格式:Expandltem(long itemhandle)展开指定的列表项(节点)。itemhandle:要展开列表项的句柄。Expandltem()函数只展开指定的列表项,而不展开该列表项下的各级子列表项。Getltem函数。格式:Getltem(itemhandle,item)得到指定句柄的完整列表项。其中,itemhandle:要得到完整信息的列表项的句柄。item:TreeViewltem类型变量,用于保存itemhandle参数指定列表项的完整信息。使用Getltem()函数可以得

50、到指定列表项的完整信息,比如标题label、句柄itemhandle、使用的图片索引pictureindex等。selectitem(long itemhandle)函数返回指定的列表项(加亮该列表项),使其成为当前列表项。本讲稿第六十三页,共八十四页setitem(itemhandle,item)设置指定列表项的数据。sort(itemhandle,sorttype)节点排序。Sort函数只对指定列表项下面第一层子项进行排序。sortall(itemhandle,sorttype)对指定列表项下的所有各项子项排序。本讲稿第六十四页,共八十四页树状视图控件编程实例例:编程用树状视图显示数据表中

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com