第11章实用扩展控件s.ppt

上传人:sccc 文档编号:4872487 上传时间:2023-05-20 格式:PPT 页数:70 大小:384.01KB
返回 下载 相关 举报
第11章实用扩展控件s.ppt_第1页
第1页 / 共70页
第11章实用扩展控件s.ppt_第2页
第2页 / 共70页
第11章实用扩展控件s.ppt_第3页
第3页 / 共70页
第11章实用扩展控件s.ppt_第4页
第4页 / 共70页
第11章实用扩展控件s.ppt_第5页
第5页 / 共70页
点击查看更多>>
资源描述

《第11章实用扩展控件s.ppt》由会员分享,可在线阅读,更多相关《第11章实用扩展控件s.ppt(70页珍藏版)》请在三一办公上搜索。

1、第11章 实用扩展控件,11.1 RichTextBox控件 11.2 TreeView和ListView控件 11.3 其他扩展控件 11.4 本章小结 11.5 上机实训,结束,11.1 RichTextBox控件,概述 11.1.1 设置字体格式 11.1.2 设置段落格式 11.1.3 使用剪贴板11.1.4 查找文本 11.1.5 打开与保存文件,返回首页,概述,RichTextBox控件又称为多格式文本框,使用该控件不仅可以输入和编辑文本,还可以对控件中任何部分的文本设置不同的格式,如对选定文本设置字体、字号、字形、颜色、下划线、删除线等。此外,在该控件中还可以设置左右缩进和悬挂式

2、缩进等段落格式,插入图片,并以RTF和纯文本两种格式打开和保存文件。加载RichTextBox控件的方法:右击工具箱,在弹出菜单中选择【部件】菜单项,打开【部件】对话框,在【控件】选项卡的列表中选中Microsoft Rich Textbox Control 6.0前面的复选框,单击【确定】按钮。此时工具箱中将增加该控件的图标。,返回首页,返回本节,11.1.1 设置字体格式(1),下面通过实例说明如何设置RichTextBox控件中选定文本的字体格式。【例11.1】利用字体对话框设置RichTextBox控件中选定文本的字体格式。新建工程,在窗体上添加一个RichTextBox和一个Comm

3、onDialog控件,均采用默认名称。将RichTextBox控件的ScrollBars属性设为2。再添加一个命令按钮,名称为cmdFont,Caption属性为“字体”。以下是按钮单击事件过程的代码:,11.1.1 设置字体格式(2),Private Sub cmdFont_Click()On Error GoTo Quit With CommonDialog1 设置通用对话框相关属性 显示所有字体和效果选项.Flags=cdlCFBoth Or cdlCFEffects 设置对话框默认字体名称 If.FontName=Then.FontName=宋体 对用户单击“取消”按钮做出响应.Can

4、celError=True.ShowFont 打开字体对话框 End With 设置RichTextBox控件中选定文本字体格式 With RichTextBox1,11.1.1 设置字体格式(3),字体名称(字符串型).SelFontName=CommonDialog1.FontName.SelFontSize=CommonDialog1.FontSize 字号(整型).SelBold=CommonDialog1.FontBold 粗体(布尔型).SelItalic=CommonDialog1.FontItalic 斜体(布尔型)下划线(布尔型).SelUnderline=CommonDia

5、log1.FontUnderline 删除线(布尔型).SelStrikeThru=CommonDialog1.FontStrikethru.SelColor=CommonDialog1.Color 颜色(长整型)End WithQuit:End Sub,11.1.1 设置字体格式(4),在上述代码中,首先利用通用对话框控件打开字体对话框,用户在对话框中设置格式并确认后,通过代码中的第二个With.End With语句块将RichTextBox控件中的选定文本格式设置为由字体对话框返回的各种格式。代码中RichTextBox控件的7个以“Sel”为前缀的属性(代表选定文本的各种格式)分别由字体

6、对话框的对应属性赋值。代码中的注释说明了各属性的含义。程序运行效果如图11.1所示。,11.1.1 设置字体格式(5),图11.1 设置字体格式,返回首页,返回本节,11.1.2 设置段落格式(1),1.段落缩进 RichTextBox控件的SelIndent、SelRightIndent和SelHangingIndent属性分别用于设置选定段落的左缩进、右缩进和悬挂缩进,均为整型数值。缩进量的单位与窗体的ScaleMode属性有关,默认单位为缇(1厘米=567缇)。【例11.2】设置段落缩进。在例11.1中的窗体上增加一个按钮,Caption属性为“左缩进”,在该按钮的单击事件过程中加入以下

7、代码:,11.1.2 设置段落格式(2),Dim sMargin As Single sMargin=Val(InputBox(输入缩进量(厘米):,_左缩进)RichTextBox1.SelIndent=sMargin*567 用同样的方法可设置右缩进和悬挂缩进。2.段落对齐方式 RichTextBox控件的SelAlignment属性用于设置选定段落的对齐方式。将该属性值设为常数rtfLeft或0为左对齐,rtfRight或1为右对齐,rtfCenter或2为居中。,11.1.2 设置段落格式(3),3.项目符号 将RichTextBox控件的SelBullet属性设为True即可为选定段

8、落添加项目符号,若同时设置BulletIndent属性,则可指定含有项目符号的段落的缩进量(默认单位为缇)。,提示:可将设置字体和段落格式的功能汇集在“格式”菜单中。段落格式设置效果如图11.2所示。,返回首页,返回本节,11.1.3 使用剪贴板(1),RichTextBox控件的SelRTF属性含有当前选定的RTF格式文本。利用SelRTF属性和剪贴板(Clipboad)对象可以实现多格式文本的剪切、复制和粘贴操作。1.操作多格式文本 剪贴板对象的SetText方法用于向剪贴板传送文本。以下代码可将多格式文本复制到剪贴板:Clipboard.Clear 清空剪贴板向剪贴板传送RTF文本Cli

9、pboard.SetText RichTextBox1.SelRTF,_vbCFRTF,11.1.3 使用剪贴板(2),剪切操作与复制相似,只需在上述代码之后加入以下代码:删除RichTextBox控件中的选定内容RichTextBox1.SelText=剪贴板对象的GetText方法用于从剪贴板中粘贴文本。例如:RichTextBox1.SelRTF=Clipboard.GetText(vbCFRTF)将上述代码分别置于对应菜单项的单击事件中即可实现剪切、复制和粘贴功能。,11.1.3 使用剪贴板(3),2.插入图片 利用LoadPicture函数、剪贴板对象的SetData方法和模拟键盘输

10、入的SendKeys语句可以在RichTextBox控件中插入图片。,【例11.3】利用剪贴板在RichTextBox控件中插入图片。效果如图11.3所示。在例11.2中添加一个命令按钮或菜单项,在它的单击事件过程中输入以下代码:,11.1.3 使用剪贴板(4),利用通用对话框选择图片文件CommonDialog1.ShowOpenClipboard.Clear 清空剪贴板将图片文件发送到剪贴板Clipboard.SetData _LoadPicture(CommonDialog1.FileName)RichTextBox1.SetFocus模拟组合键Ctrl+V从剪贴板粘贴图片SendKey

11、s v,TrueClipboard.Clear,返回首页,返回本节,11.1.4 查找文本(1),RichTextBox控件的Find方法用于搜索特定字符串。若找到待查内容则将其反相显示,并返回其位置;若未找到则返回-1。Find方法的调用格式为:RichTextBox控件名称.Find(待查字符串,起始位置,结束位置,选项)【例11.4】在RichTextBox控件中查找文本。在例11.3中添加两个菜单项或命令按钮,标题(Caption)分别为“查找”和“查找下一个”。将RichTextBox控件的HideSelection属性设为False,以便在控件失去焦点时仍可反相显示找到的字符串。,

12、11.1.4 查找文本(2),在代码编辑窗口的“通用-声明”部分声明一个窗体级的变量用于存放待查内容:Dim strFind As String下面是“查找”菜单项单击事件过程的代码:mnuFind为“查找”菜单项的名称Private Sub mnuFind_Click()strFind=InputBox(输入查找内容,查找)If strFind=Then Exit Sub Find方法返回-1说明未找到 If RichTextBox1.Find(strFind)=-1 Then MsgBox 未找到“&strFind&”。,_ vbInformation,提示 strFind=End IfE

13、nd Sub,11.1.4 查找文本(3),在“查找下一个”菜单项或按钮的单击事件过程中加入以下代码:Dim lngL As Long若为首次查找则调用“查找”过程If strFind=Then Call mnuFind_ClickElse With RichTextBox1 lngL=.SelLength.SelStart=.SelStart+lngL,11.1.4 查找文本(4),If.Find(strFind,Len(.TextRTF)=-1 Then.SelStart=.SelStart-lngL.SelLength=lngL MsgBox 查找结束。,vbInformation,提示

14、 End If End WithEnd If,返回首页,返回本节,11.1.5 打开与保存文件(1),RichTextBox控件的LoadFile和SaveFile方法分别用于装载和保存文件。文件格式可以是文本文件或RTF文件。下面通过实例说明这两个方法的调用。【例11.5】在RichTextBox控件中打开和保存文件。在例11.4中添加一个顶层菜单“文件”,在该菜单下添加“打开”和“保存”两个菜单项。“打开”菜单项单击事件过程的代码如下:,11.1.5 打开与保存文件(2),Private Sub mnuOpen_Click()打开文件 On Error GoTo Quit With Com

15、monDialog1.CancelError=True.Filter=文本文件(*.txt)|*.txt _&|RTF文件(*.rtf)|*.rtf.ShowOpen If UCase$(Right$(.FileName,3)=RTF Then 打开RTF文件 RichTextBox1.LoadFile.FileName,rtfRTF Else 打开文本文件 RichTextBox1.LoadFile.FileName,rtfText End If,11.1.5 打开与保存文件(3),End WithQuit:End Sub“保存”菜单项单击事件过程的代码如下:Private Sub mnuS

16、ave_Click()On Error GoTo Quit With CommonDialog1.CancelError=True.Filter=文本文件(*.txt)|*.txt _&|RTF文件(*.rtf)|*.rtf.ShowSave,11.1.5 打开与保存文件(4),设置默认扩展名,在用户未输入扩展名时使用 If.FilterIndex=1 Then.DefaultExt=txt Else.DefaultExt=rtf End If If UCase$(Right$(.FileName,3)=RTF Then 保存文件为RTF格式 RichTextBox1.SaveFile.Fil

17、eName,rtfRTF Else 保存文本文件 RichTextBox1.SaveFile.FileName,rtfText End If End WithQuit:End Sub,返回首页,返回本节,11.2 TreeView和ListView控件,11.2.1 TreeView控件 11.2.2 ListView控件 TreeView 和 ListView均为Microsoft Windows Common Controls 6.0中的控件,需要加载后方可使用,加载方法与RichTextBox控件相似。,返回首页,11.2.1 TreeView控件(1),1.理解Node对象与Nodes

18、集合 在讨论TreeView控件的应用之前应当对Node对象和Nodes集合有所了解。TreeView控件中的每个列表项都是一个Node对象(节点),节点可包含文本和图片。节点之间的关系可以是父子关系或兄弟关系。,如图11.4所示,系与其班级之间为父子关系,各系之间为兄弟关系(位于同一层次),一个系中的班级之间也是兄弟关系。,图11.4 TreeView控件,11.2.1 TreeView控件(2),系是班级的父节点(Parent),班级是系的子节点(Child)。各系均为顶层节点,顶层节点没有父节点(Nothing)。控件中的所有Node对象构成Nodes集合,集合中的每一个Node对象具有

19、一个惟一的索引(下界为1),利用索引可以访问集合中的Node对象。例如,TreeView1.Nodes(1)是指集合中的第一个节点。,11.2.1 TreeView控件(3),2.添加节点Nodes集合的Add方法用于添加节点。调用格式为:TreeView控件名.Nodes.Add(相关节点,关系,关键字,文本,图片,选定时图片)Add方法的6个参数均为可选参数。前两个参数共同指定新节点的位置。“相关节点”为现有某节点的索引或关键字。,11.2.1 TreeView控件(4),“关系”是指新节点与“相关节点”的位置关系,该参数的取值常数为:tvwFirst,tvwLast,tvwNext,tv

20、wPrevious或tvwChild,分别对应整数04。其中tvwChild为父子关系,即新节点是“相关节点”的子节点。其他常数均为兄弟关系,即新节点与“相关节点”位于同一层次,分别为首位、末位、后邻位和前邻位。如果省略了“相关节点”参数,则在所有顶层节点之后添加一个新节点,并且忽略“关系”参数。Add方法的其他参数均不难理解。,11.2.1 TreeView控件(5),【例11.6】在TreeView控件中建立系和班级的分层列表。新建工程,在窗体上添加一个TreeView控件和一个ImageList控件,均采用默认名称。添加两个命令按钮,Capation属性分别为【添加系】和【添加班级】。按

21、第10章所述方法在ImageList控件中添加4个图片。右击TreeView控件,在弹出菜单中选择【属性】菜单项,打开如图11.5所示的【属性页】对话框,在对话框的【图像列表】中选择ImageList1,设【线条样式】为1,单击【确定】按钮关闭对话框。,11.2.1 TreeView控件(6),图11.5 TreeView控件属性页,11.2.1 TreeView控件(7),在【添加系】按钮的单击事件过程中加入以下代码:Dim mNode As Node 声明节点对象变量若省略Add方法的第一个参数,则在所有顶层节点之后添加一个新的顶层节点,同时忽略Add方法的第二个参数。下面一行语句中的1,

22、2为ImageList控件中的图片索引。Set mNode=TreeView1.Nodes.Add(,X系,1,2)添加节点并为变量赋值mNode.Selected=True 选中新节点使新节点标签处于编辑状态以便用户修改TreeView1.StartLabelEdit,11.2.1 TreeView控件(8),在【添加班级】按钮的单击事件过程中加入以下代码:若控件中无节点退出此过程If TreeView1.Nodes.Count=0 Then Exit SubDim mNode As Node 声明节点对象变量Dim iIndex As Integer若未选择节点将出错,转错误处理语句On

23、Error GoTo NodeErr取当前选定节点的索引 iIndex=TreeView1.SelectedItem.Index,11.2.1 TreeView控件(9),若选定的节点是系节点(无父节点)则添加子节点,否则添加兄弟节点 If TreeView1.Nodes(iIndex).Parent Is Nothing Then Set mNode=TreeView1.Nodes.Add(iIndex,_ tvwChild,X级X班,3,4)Else Set mNode=TreeView1.Nodes.Add(iIndex,_ tvwLast,X级X班,3,4)End If mNode.E

24、nsureVisible 使新节点可见 mNode.Selected=True 选中新节点 使新节点标签处于编辑状态以便用户修改 TreeView1.StartLabelEdit,11.2.1 TreeView控件(10),Exit SubNodeErr:处理错误 MsgBox 请先选择一个系。,vbExclamation,提示程序运行效果如图11.6和图11.7所示。,图11.6 添加系 图11.7 添加班级,11.2.1 TreeView控件(11),3.删除和清空节点 Nodes集合的Remove方法和Clear方法分别用于删除和清空节点。【例11.7】扩展例11.6的功能,使之能够删除

25、和清空节点。在例11.6中添加两个按钮,Caption分别为“删除”和“清空”。在“删除”按钮的单击事件过程中加入以下代码:,11.2.1 TreeView控件(12),若控件中无节点退出此过程If TreeView1.Nodes.Count=0 Then Exit SubDim iIndex As Integer取当前选定节点的索引iIndex=TreeView1.SelectedItem.Index 删除选定节点及其子节点TreeView1.Nodes.Remove iIndex在“清空”按钮的单击事件过程中加入以下代码:TreeView1.Nodes.Clear 清除所有节点,11.2.

26、1 TreeView控件(13),4.响应节点的单击事件 在TreeView中选择节点时将触发节点单击事件NodeClick。该事件过程的Node参数代表被选择的节点对象。例如,在例11.7中添加一个标签,然后为节点单击事件编写如下代码,程序运行时选择某一节点即可在标签中显示该节点的完整路径(FullPath属性):Private Sub TreeView1_NodeClick(ByVal _ Node As MSComctlLib.Node)Label1.Caption=“选定节点:”_&Node.FullPathEnd Sub,返回首页,返回本节,11.2.2 ListView控件(1),

27、ListView控件可使用大图标、小图标、列表和报表(详细资料)四种不同视图显示列表项。Windows资源管理器的右窗格就是ListView控件的典型例子。1.ListView控件的四种视图 ListView控件的View属性决定它的视图显示方式,有4种取值。将该属性值设为常数lvwIcon或0为大图标,lvwSmallIcon或1为小图标,lvwList或2为列表,lvwReport或3为详细资料。四种视图显示模式如图11.8图11.11所示。,11.2.2 ListView控件(2),图11.8 大图标视图 图11.9 小图标视图,11.2.2 ListView控件(3),图11.10 列

28、表视图 图11.11 详细资料视图,11.2.2 ListView控件(4),2.理解ListView控件中的对象与对象集合(1)ListItem对象与ListItems集合 ListView控件中的每个列表项都是一个ListItem对象,列表项可包含文本和图片。控件中的所有ListItem对象构成ListItems集合,集合中的每个对象具有惟一索引。在程序代码中调用ListItems集合的Add方法可以在控件中添加列表项,调用格式为:ListView控件名.ListItems.Add(索引,关键字,文本,大图标,小图标),11.2.2 ListView控件(5),(2)ColumnHeade

29、r对象与ColumnHeaders集合 在如图11.11所示的详细资料视图中,第一行的标题【姓名】、【性别】和【年龄】即为ColumnHeader对象(列标头)。控件中的所有ColumnHeader对象构成ColumnHeaders集合。在列标头下面,左起第一列是在各种视图中均可显示的列表项,列表项右侧的各列均为列表子项(SubItem)。每个列表项可以有多个子项,它们构成子项数组(SubItems),数组类型为字符串型,下界为1,上界为列标头总数-1。,11.2.2 ListView控件(6),调用ColumnHeaders集合的Add方法可以添加列标头,调用格式为:ListView控件名.

30、ColumnHeaders.Add(索引,关键字,文本,宽度,对齐方式,图标 添加列标头后将自动确定列表子项数组的上界,此时可以为子项数组元素赋值。,11.2.2 ListView控件(7),3.在ListView控件中使用图片 ListView控件中所用的图片由ImageList控件提供。一个ListView控件可以使用三个ImageList控件,分别提供大图标、小图标(供小图标、列表和详细资料视图使用)和列标头图标。在设计时可以通过ListView控件的属性页指定ImageList控件。程序运行时可以通过代码指定要使用的ImageList控件,例如:Set ListView1.Icons=

31、Imagelist1 大图标Set ListView1.SmallIcons=Imagelist2 小图标列标头图标Set ListView1.ColumnHeaderIcons=Imagelist3,11.2.2 ListView控件(8),【例11.8】设计如图11.8图11.11所示的ListView控件的不同视图。新建工程,在窗体上添加一个ListView控件和两个ImageList控件(本例中未使用列标头图标),均采用默认名称。创建一个含有四个元素的单选按钮数组,名称均为optView,索引为03,设Style属性均为1,Cpation属性分别为“大图标”、“小图标”、“列表”和“详

32、细资料”。ImageList控件和ListView控件的属性分别通过图11.12和图11.13所示的属性页设置。,11.2.2 ListView控件(9),图11.12 ImageList属性页,返回,11.2.2 ListView控件(10),图11.13 ListView属性页,返回,11.2.2 ListView控件(11),右击ImageList1,在弹出菜单中选择【属性】菜单项,打开如图11.12所示的【属性页】对话框,在【通用】选项卡中选择【32 x 32】单选钮(此步骤设置图像大小),然后切换到【图像】选项卡添加4个图片。用同样的方法将ImageList2的图像大小设为【16 x

33、 16】并添加图片。右击ListView控件,在弹出菜单中选择【属性】菜单项,打开如图11.13所示的【属性页】对话框,切换到【图像列表】选项卡,在【普通】组合框中选择ImageList1,在【小图标】组合框中选择ImageList2。,11.2.2 ListView控件(12),在窗体的Load事件中对ListView控件进行初始化:Private Sub Form_Load()添加列标头。数字为宽度(缇)ListView1.ColumnHeaders.Add,姓名,1200 ListView1.ColumnHeaders.Add,性别,800 ListView1.ColumnHeaders

34、.Add,年龄,800 Dim itmX As ListItem 声明列表项对象变量 Set itmX=ListView1.ListItems.Add(,_ 张三,1,1)添加列表项 设置子项,供“详细资料”视图使用 itmX.SubItems(1)=男 itmX.SubItems(2)=20 添加其他列表项 End Sub,11.2.2 ListView控件(13),利用单选按钮的单击事件切换视图,代码如下:用单选按钮控件数组切换视图Private Sub optView_Click(Index As Integer)4个单选按钮的索引号为03,恰好与ListView控件 View属性的4个

35、常数值相对应,因此用单选钮的索引号为ListView控件的View属性赋值 可简化代码。ListView1.View=IndexEnd Sub,返回首页,返回本节,11.3 其他扩展控件,11.3.1 SSTab控件 11.3.2 ProgressBar控件 11.3.3 DateTimePicker控件,返回首页,11.3.1 SSTab控件(1),SSTab控件提供一组选项卡,每个选项卡都可作为其它控件的容器。该控件在Microsoft Tabbed Dialog 6.0部件中,加载后才能使用。【例11.9】制作如图11.14和图11.15所示含有两个选项卡的用户界面。,图11.14 基本

36、情况选项卡 图11.15 附加信息选项卡,11.3.1 SSTab控件(2),在窗体上添加一个SSTab控件,右击该控件,在弹出菜单中选择【属性】菜单项,打开如图11.16所示的【属性页】对话框。在对话框中将【选项卡数】设为2,将【样式】设为1。在【选项卡标题】文本框中输入第一个选项卡的标题“基本情况”。单击“”按钮,输入第二个选项卡的标题“附加信息”。单击【确定】按钮关闭对话框。根据图11.14和图11.15为两个选项卡分别添加相关控件并设置属性。其中,【基本情况】选项卡中用于输入姓名的文本框名称为txtName,【附加信息】选项卡中用于显示姓名的标签名称为lblName。,11.3.1 S

37、STab控件(3),图11.16 SSTab控件属性页,11.3.1 SSTab控件(4),在SSTab控件的单击事件中加入以下代码:Private Sub SSTab1_Click(PreviousTab As Integer)Tab属性返回当前活动选项卡的索引(下界为0)If SSTab1.Tab=1 Then 若单击“附加信息”选项卡 lblName.Caption=姓名:&txtName.Text End IfEnd Sub 提示:切换选项卡的方法为单击选项卡标题或用键盘操作(用访问键,或当选项卡具有焦点时按Ctrl+Tab键或左右箭头键),也可以在代码中为Tab属性赋值实现。SSTa

38、b控件的Click事件比较特殊,它仅在选项卡切换时被触发;当单击活动选项卡标题时,不会导致选项卡切换,因此不触发该事件。,返回首页,返回本节,11.3.2 ProgressBar控件(1),在应用程序中,当执行一个耗时较长的操作时,可用ProgressBar控件(进度条)显示事务的进程。ProgressBar属于Microsoft Windows Common Controls 6.0中的控件,需要加载后使用。ProgressBar控件有三个最重要的属性Min、Max和Value。Min和Max用于设置进度条的起点和终点。Value属性用于在运行时设置或返回进度条的填充量。在显示某操作的进展情

39、况时,可以将Value值设为从Min值开始递增,直到由Max属性定义的最大值为止。下面通过实例说明该控件的使用。,11.3.2 ProgressBar控件(2),【例11.10】用进度条和定时器控件模拟数据处理的进度,如图11.17所示。,在窗体上添加一个框架Frame1,设其Caption属性为空,Visible属性为False。在框架中添加两个标签,均采用默认名称。设Label1的Caption属性为“正在处理数据,请稍候.”。,图11.17 进度条,11.3.2 ProgressBar控件(3),输入以下代码:Dim intValue As Integer 窗体级变量用于存放进度值Pri

40、vate Sub cmdStart_Click()“开始”按钮 intValue=0 ProgressBar1.Value=0 进度条初始化 Frame1.Visible=True 显示框架及其中的进度条等控件 Timer1.Enabled=True 启动定时器 cmdStart.Enabled=False 使开始按钮无效End Sub,11.3.2 ProgressBar控件(4),Private Sub Timer1_Timer()定时器事件 intValue=intValue+1 累加进度值 If intValue 100 Then 若超过最大值 Timer1.Enabled=False

41、 关闭定时器 MsgBox 数据处理结束。,vbInformation,提示 Frame1.Visible=False 隐藏框架及其中的控件 cmdStart.Enabled=True 设开始按钮有效 Else 设置Value属性值,显示进度 ProgressBar1.Value=intValue 显示进度百分比 Label2.Caption=intValue&%End IfEnd Sub,返回首页,返回本节,11.3.3 DateTimePicker控件(1),DateTimePicker控件(DTPicker)可以按指定格式显示日期或时间,并且作为修改日期和时间信息的界面。该控件属于Mic

42、rosoft Windows Common Controls-2 6.0中的控件,加载后方可使用。DateTimePicker控件有两种不同的显示模式:下拉日历模式。单击控件右部的下拉箭头可显示日历,用于选择日期。时间显示模式。用于显示或设置时间。可在控件中选择一个域(时、分、秒)后,用控件右部的上下箭头设置其值,亦可通过键盘输入数字或按箭头键设置其值。,11.3.3 DateTimePicker控件(2),通过DateTimePicker控件的Format(格式)属性可以设置日期或时间的显示格式。Format属性有4种取值:设为常数dtpLongDate或0为长日期格式,dtpShortDa

43、te或1为短日期格式,dtpTime或2为时间格式,dtpCustom或3为自定义格式。当Format属性值为0或1时,控件以下拉日历模式显示日期;Format属性值为2时,以时间模式显示时间。当Format属性值为3时,控件的显示模式取决于CustomFormat(自定义格式)属性和UpDown(上下箭头)属性。若CustomFormat属性为日期格式字符串,且UpDown属性为False,则为下拉日历模式。若CustomFormat属性为时间格式字符串,且UpDown属性为True,则为时间显示模式。,11.3.3 DateTimePicker控件(3),【例11.11】使用DateTim

44、ePicker控件选择日期并设置时间,当到达预定的日期和时间时提示用户。在窗体上添加两个DateTimePicker控件DTPicker1和DTPicker2,分别用于设置日期和时间。右击DTPicker1,在弹出菜单中选择【属性】菜单项,打开如图11.18所示的【属性页】,在【通用】选项卡中将【格式】设为3-dtpCustom,将【自定义格式】设为“yyy-M-d”(yyy为完整年份)。用同样的方法将DTPicker2的【格式】设为2-dtpTime。,11.3.3 DateTimePicker控件(4),图11.18 DateTimePicker控件属性页,返回,11.3.3 DateTi

45、mePicker控件(5),在两个DateTimePicker控件的上方各添加一个标签,用作简单说明。添加一个文本框和两个命令按钮,按钮的Caption属性分别为“确定”和“退出”。添加一个Timer控件,设其Enabled属性为False,Interval属性为500。在“确定”按钮的单击事件过程中加入以下代码:Text1.Text=提示日期:_&Format(DTPicker1.Value,_yyyy年m月d日)_&vbCrLf&提示时间:_&TimeValue(DTPicker2.Value)Timer1.Enabled=True,11.3.3 DateTimePicker控件(6),在

46、Timer1控件的Timer事件中加入以下代码:If DateValue(DTPicker1.Value)=Date _ And TimeValue(DTPicker2.Value)_=Time Then MsgBox 时间到。Timer1.Enabled=FalseEnd If 说明:DateTimePicker控件的Value属性用于返回或设置日期和时间。,11.3.3 DateTimePicker控件(7),程序运行效果如图11.19和图11.20所示。在图11.19中,单击控件的下拉箭头显示日历,单击年份和月份可修改年月,单击日历中的某个日期即完成设定。在图11.20中,单击时间模式控

47、件中的上下箭头可设置时间。,图11.19 下拉日历 图11.20 设置时间,返回首页,返回本节,11.4 本 章 小 结(1),本章主要介绍了几种较为实用的ActiveX控件。有效地使用这些控件可以为应用程序增加功能、美化界面和提高性能。RichTextBox控件又称多格式文本框,使用该控件可以对控件中不同部分的文本设置不同的字体格式和段落格式,插入图片,在控件中查找文本,用RTF和纯文本两种格式打开和保存文件。TreeView控件由呈树状分布的若干节点组成,用于显示具有层次结构的信息。控件中的每个节点都是Node对象,节点可包含文本和图片。节点之间可以是父子或兄弟关系。所有节点构成Nodes

48、集合,调用该集合的相关方法可以添加、删除和清空节点。该控件最常用的事件是NodeClick事件。,11.4 本 章 小 结(2),ListView控件可使用大图标、小图标、列表和详细资料4种视图显示列表项,View属性决定它的视图显示方式。SSTab控件由一组选项卡组成,每个选项卡都可作为其它控件的容器,且具有惟一的索引(下界为0)。Tab属性用于返回或设置活动选项卡。切换选项卡时触发Click事件。ProgressBar控件即进度条,用于动态显示事务的进程。该控件最重要的属性是Min、Max和Value。DateTimePicker控件可以按指定格式显示和设置日期或时间。使用属性页或Format属性可以设置两种不同的显示模式:下拉日历模式和时间显示模式。,返回首页,11.5 上 机 实 训,实训目的 熟悉RichTextBox、TreeView、ListView和SSTab控件的使用;了解DateTimePicker控件的使用。实训内容 1.使用RichTextBox控件创建多格式文本编辑器。2.利用TreeView控件建立部门分层列表。3.创建ListView控件的4种视图。4.制作含有选项卡的用户界面。,返回首页,结束,xixie,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号