实用扩展控件.ppt
《实用扩展控件.ppt》由会员分享,可在线阅读,更多相关《实用扩展控件.ppt(65页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、第11章 实用扩展控件w 11.1 RichTextBox控件 w 11.2 TreeView和ListView控件 w 11.3 其他扩展控件 结束11.1 RichTextBox控件w 概述 w 11.1.1 设置字体格式 w 11.1.2 设置段落格式 w 11.1.3 使用剪贴板w 11.1.4 查找文本 w 11.1.5 打开与保存文件 返回首页概述 RichTextBox控件又称为多格式文本框,使用该控件不仅可以输入和编辑文本,还可以对控件中任何部分的文本设置不同的格式,如对选定文本设置字体、字号、字形、颜色、下划线、删除线等。此外,在该控件中还可以设置左右缩进和悬挂式缩进等段落格
2、式,插入图片,并以RTF和纯文本两种格式打开和保存文件。加载RichTextBox控件的方法:右击工具箱,在弹出菜单中选择【部件】菜单项,打开【部件】对话框,在【控件】选项卡的列表中选中“Microsoft Rich Textbox Control 6.0”前面的复选框,单击【确定】按钮。此时工具箱中将增加该控件的图标。返回首页 返回本节11.1.1 设置字体格式(1)下面通过实例说明如何设置RichTextBox控件中选定文本的字体格式。【例11.1】利用字体对话框设置RichTextBox控件中选定文本的字体格式。新建工程,在窗体上添加一个RichTextBox和一个 CommonDial
3、og控件,均采用默认名称。将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=宋体 对用户单击“取消”按钮做出响应.CancelError
4、=True.ShowFont 打开字体对话框 End With 设置RichTextBox控件中选定文本字体格式 With RichTextBox111.1.1 设置字体格式(3)字体名称(字符串型).SelFontName=CommonDialog1.FontName.SelFontSize=CommonDialog1.FontSize 字号(整型).SelBold=CommonDialog1.FontBold 粗体(布尔型).SelItalic=CommonDialog1.FontItalic 斜体(布尔型)下划线(布尔型).SelUnderline=CommonDialog1.FontU
5、nderline 删除线(布尔型).SelStrikeThru=CommonDialog1.FontStrikethru.SelColor=CommonDialog1.Color 颜色(长整型)End WithQuit:End Sub11.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属性为“左缩进”,在该按钮的单击事件过程中加入以下代码:11.1.2 设置段落格式
7、(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即可为选定段落添加项目符号,若同时设置BulletI
8、ndent属性,则可指定含有项目符号的段落的缩进量(默认单位为缇)。提示:可将设置字体和段落格式的功能汇集在“格式”菜单中。段落格式设置效果如图11.2所示。返回首页 返回本节11.1.3 使用剪贴板(1)RichTextBox控件的SelRTF属性含有当前选定的RTF格 式 文 本。利 用 SelRTF属 性 和 剪 贴 板(Clipboad)对象可以实现多格式文本的剪切、复制和粘贴操作。1.操作多格式文本 剪贴板对象的SetText方法用于向剪贴板传送文本。以下代码可将多格式文本复制到剪贴板:Clipboard.Clear 清空剪贴板向剪贴板传送RTF文本Clipboard.SetText
9、 RichTextBox1.SelRTF,_vbCFRTF11.1.3 使用剪贴板(2)剪切操作与复制相似,只需在上述代码之后加入以下代码:删除RichTextBox控件中的选定内容RichTextBox1.SelText=剪贴板对象的GetText方法用于从剪贴板中粘贴文本。例如:RichTextBox1.SelRTF=Clipboard.GetText(vbCFRTF)将上述代码分别置于对应菜单项的单击事件中即可实现剪切、复制和粘贴功能。11.1.3 使用剪贴板(3)2.插入图片 利用LoadPicture函数、剪贴板对象的SetData方法 和 模 拟 键 盘 输 入 的 SendKey
10、s语 句 可 以 在RichTextBox控件中插入图片。【例11.3】利用剪贴板在RichTextBox控件中插入图片。效果如图11.3所示。在例11.2中添加一个命令按钮或菜单项,在它的单击事件过程中输入以下代码:11.1.3 使用剪贴板(4)利用通用对话框选择图片文件CommonDialog1.ShowOpenClipboard.Clear 清空剪贴板将图片文件发送到剪贴板Clipboard.SetData _LoadPicture(CommonDialog1.FileName)RichTextBox1.SetFocus模拟组合键Ctrl+V从剪贴板粘贴图片SendKeys v,True
11、Clipboard.Clear返回首页 返回本节11.1.4 查找文本(1)RichTextBox控件的Find方法用于搜索特定字符串。若找到待查内容则将其反相显示,并返回其位置;若未找到则返回-1。Find方法的调用格式为:RichTextBox控件名称.Find(待查字符串,起始位置,结束位置,选项)【例11.4】在RichTextBox控件中查找文本。在例11.3中添加两个菜单项或命令按钮,标题(Caption)分别为“查找”和“查找下一个”。将RichTextBox控件的HideSelection属性设为False,以便在控件失去焦点时仍可反相显示找到的字符串。11.1.4 查找文本(
12、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 IfEnd Sub11.1.4
13、查找文本(3)在“查找下一个”菜单项或按钮的单击事件过程中加入以下代码:Dim lngL As Long若为首次查找则调用“查找”过程If strFind=Then Call mnuFind_ClickElse With RichTextBox1 lngL=.SelLength.SelStart=.SelStart+lngL11.1.4 查找文本(4)If.Find(strFind,Len(.TextRTF)=-1 Then.SelStart=.SelStart-lngL.SelLength=lngL MsgBox 查找结束。,vbInformation,提示 End If End WithE
14、nd 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 CommonDialog1.CancelError
15、=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 If11.1.5 打开与保存文件(3)End WithQuit:End Sub“保存”菜单项单击事件过程的代码如下:Private Sub mnuSave_Click()On Error GoTo
16、 Quit With CommonDialog1.CancelError=True.Filter=文本文件(*.txt)|*.txt _&|RTF文件(*.rtf)|*.rtf.ShowSave11.1.5 打开与保存文件(4)设置默认扩展名,在用户未输入扩展名时使用 If.FilterIndex=1 Then.DefaultExt=txt Else.DefaultExt=rtf End If If UCase$(Right$(.FileName,3)=RTF Then 保存文件为RTF格式 RichTextBox1.SaveFile.FileName,rtfRTF Else 保存文本文件 R
17、ichTextBox1.SaveFile.FileName,rtfText End If End WithQuit:End Sub返回首页 返回本节11.2 TreeView和ListView控件w 11.2.1 TreeView控件 w 11.2.2 ListView控件 TreeView 和 ListView均为Microsoft Windows Common Controls 6.0中的控件,需要加载后方可使用,加载方法与RichTextBox控件相似。返回首页11.2.1 TreeView控件(1)1.理解Node对象与Nodes集合 在讨论TreeView控件的应用之前应当对Node
18、对象和Nodes集合有所了解。TreeView控件中的每个列表项都是一个Node对象(节点),节点可包含文本和图片。节点之间的关系可以是父子关系或兄弟关系。如图11.4所示,系与其班级之间为父子关系,各系之间为兄弟关系(位于同一层次),一个系中的班级之间也是兄弟关系。图11.4 TreeView控件 11.2.1 TreeView控件(2)系是班级的父节点(Parent),班级是系的子节点(Child)。各系均为顶层节点,顶层节点没有父节点(Nothing)。控件中的所有Node对象构成Nodes集合,集合中的每一个Node对象具有一个惟一的索引(下界为1),利用索引可以访问集合中的Node对
19、象。例如,TreeView1.Nodes(1)是指集合中的第一个节点。11.2.1 TreeView控件(3)2.添加节点Nodes集合的Add方法用于添加节点。调用格式为:TreeView控件名.Nodes.Add(相关节点,关系,关键字,文本,图片,选定时图片)Add方法的6个参数均为可选参数。前两个参数共同指定新节点的位置。“相关节点”为现有某节点的索引或关键字。11.2.1 TreeView控件(4)“关系”是指新节点与“相关节点”的位置关 系,该 参 数 的 取 值 常 数 为:tvwFirst,tvwLast,tvwNext,tvwPrevious或tvwChild,分 别 对 应
20、 整 数 0 4。其 中tvwChild为父子关系,即新节点是“相关节点”的子节点。其他常数均为兄弟关系,即新节点与“相关节点”位于同一层次,分别为首位、末位、后邻位和前邻位。如果省略了“相关节点”参数,则在所有顶层节点之后添加一个新节点,并且忽略“关系”参数。Add方法的其他参数均不难理解。11.2.1 TreeView控件(5)【例11.6】在TreeView控件中建立系和班级的分层列表。新建工程,在窗体上添加一个TreeView控件和一个ImageList控件,均采用默认名称。添加两个命令按钮,设Cpation属性分别为“添加系”和“添加班级”。按第10章所述方法在ImageList控件
21、中添加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,2为ImageList控件中的图片索引。Set
22、 mNode=TreeView1.Nodes.Add(,X系,1,2)添加节点并为变量赋值mNode.Selected=True 选中新节点使新节点标签处于编辑状态以便用户修改TreeView1.StartLabelEdit11.2.1 TreeView控件(8)在“添加班级”按钮的单击事件过程中加入以下代码:若控件中无节点退出此过程If TreeView1.Nodes.Count=0 Then Exit SubDim mNode As Node 声明节点对象变量Dim iIndex As Integer若未选择节点将出错,转错误处理语句On Error GoTo NodeErr取当前选定节点
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 实用 扩展 控件
限制150内