欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    VBNET程序设计实用教程7.ppt

    • 资源ID:84445819       资源大小:2.62MB        全文页数:82页
    • 资源格式: PPT        下载积分:16金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要16金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    VBNET程序设计实用教程7.ppt

    VB.NEVB.NET T清华大学出版社清华大学出版社VB.NET程序设计实用教程程序设计实用教程第第7 7章章 WindowsWindows高级界面设计高级界面设计本章任务:体 育 彩 票 摇 奖 程 序简 易 文 本 编 辑 器 程 序 图 文 浏 览 器 程 序计算机算机应用用教研教研室室操作系操作系统本章要点本章要点菜单的制作方法标准对话框的使用工具栏的制作方法多窗体应用程序设计状态栏的制作方法要要点点MDI应用程序设计7.1 7.1 任务任务7-17-1:体育彩票摇奖程序:体育彩票摇奖程序多窗体程序设计多窗体程序设计任务7-1描述:编写一个七位号码体彩摇奖程序,程序中有三个窗体,分别如图7-1、图7-2和图7-3所示。程序运行时首先出现摇奖窗体,在该窗体上单击“摇奖”按钮,将不停地产生随机数并填充在七个文本框中,如图7-4所示。单击“停止”按钮将停止摇奖,此时在文本框中显示的数就是获奖号码。单击“公布”按钮将公布获奖号码,如图7-5所示。在该窗体上单击“返回”按钮将返回到摇奖窗体。单击“退出”按钮将出现如图7-6所示的“退出提示框”,单击“确定”按钮将退出应用程序。注意:在图7-1所示的窗体中还有一个定时器控件。计算机算机应用用教研教研室室操作系操作系统 图7-1 摇奖窗体设计界面 图7-2 公布中奖号码窗体设计界面图7-3 “退出提示框”窗体设计界面 图7-4 摇奖窗体运行界面图7-5 公布中奖号码窗体运行界面 图7-6 “退出提示框”窗体运行界面1启动VB.NET,新建一个项目,项目类型为“Windows应用程序”,项目的存放位置为“D:VBTASKCH07”,项目名为“Task7_1”。2把Form1窗体的Text属性值设置为“体育彩票摇奖程序”,把它的Name属性值设置为“frmTicketReward”。单击“解决方案资源管理器”中的“Form1.VB”窗体,然后在属性窗口中把它文件名属性设置为“frmTicketReward.vb”。然后执行【项目】【Task7_1属性】命令,在出现的“Task7_1属性页”对话框中把“启动对象”设置为frmTicketReward”。注意:在多窗体程序设计中,如果要改变启动窗体,方法也是执行【项目】【*属性】命令,在出现的“*属性页”对话框中把“启动对象”设置为相应窗体即可。任务实现:控件名属性名属性值作用Label1Caption号码提示TextBox1TextBox7Text显示摇奖号码Button1Caption摇奖单击它开始摇奖Button2Caption停止单击它停止摇奖Button3Caption公布单击它弹出公布获奖号码窗体,公布中奖号码Button4Caption退出单击它弹出“退出提示框”提示是否退出程序Timer1EnabledIntervalFalse200每隔150毫秒产生一组号码3对照图7-1摇奖窗体设计界面,为窗体添加控件并设置控件的属性。控件的属性设置如表7-1所示。表7-1 任务7-1中的frmTicketReward窗体中的控件属性设置及其功能计算机算机应用用教研教研室室操作系操作系统4单击工具栏上的“”按钮或执行【项目】【添加Windows窗体】命令,将会出现如图7-7所示的【添加新项】对话框。5在该对话框的“模板”下面的列表框中选中【Windows 窗体】图标,在名称后面的文本框中输入窗体名“frmTicketPublish”,然后单击“打开”按钮,即为应用程序添加了一个名为“frmTicketPublish”窗体。把该窗体的Text属性值设置为“中奖号码公布”。注意:也可以选添加窗体,然后再修改其Name属性值。图7-7 “添加新项”对话框控件名属性名属性值作用Label1Caption本期获奖号码如下:提示TextBox1TextBox7Text显示中奖号码Button1Caption返回返回到摇奖窗体6对照图7-2公布获奖号码窗体设计界面,为窗体添加控件并设置控件的属性。控件的属性设置如表7-2所示。7采用与步骤4和步骤5同样的方法为项目再添加一个名为“frmExit”的窗体,并把它的Text属性值设置为“退出提示框”。表7-2 任务7-1中的frmTicketPublish窗体中的控件属性设置及其功能对象名属性名属性值说明Label1Text真的要退出应用程序吗?提示信息Button1TextDialogResult确定OK单击它将退出应用程序Button2TextDialogResult取消Cancel单击它将不退出应用程序8对照图7-3退出提示框窗体设计界面,为窗体添加控件并设置控件的属性。控件的属性设置如表7-3所示。然后再把该窗体的FormBorderStyle属性值设置为“FixedSingle”,把AcceptButton属性值设置为“Button1”把CancelButton属性值设置为“Button2”。至此界面设计基本完成。表7-3 任务7-1中的frmExit窗体中的控件属性设置及其功能 9在“解决方案资源管理器”中双击“frmTicketReward”窗体,并切换到“frmTicketReward”窗体的代码窗口,在代码窗口的最顶部加上如下程序代码。Imports Task7_1.frmTicketPublishImports Task7_1.frmExit注意:在多窗体程序设计中,每个窗体相当于一个类,在一个窗体中要调用其它窗体,必须通过Imports语句把该窗体作为命名空间引入进来。10在“”下面编写如下程序代码,定义7个全局公享的整型变量,用来存放中奖号码。Public Shared a1,a2,a3,a4,a5,a6,a7 As Integer 存放摇出来的中奖号码注意:必须是在窗体的“Declaration”部分用“Public Shared”定义的变量才能被其它窗体使用。11编写本窗体的Load事件过程代码,如下。Private Sub frmTicketReward_Load(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles MyBase.Load Randomize()随机数初始化 End Sub12编写Button1按钮的Click事件过程代码,如下。Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button1.Click Timer1.Enabled=True 启动定时器,开始摇号 Button2.Enabled=True 停止按钮可用 Button1.Enabled=False 摇奖按钮不可用 End Sub 13编写Timer1控件的Tick事件过程代码,如下。Private Sub Timer1_Tick(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Timer1.Tick 产生七位随机数作为中奖号码 a1=Int(Rnd()*10):a2=Int(Rnd()*10)a3=Int(Rnd()*10):a4=Int(Rnd()*10)a5=Int(Rnd()*10):a6=Int(Rnd()*10)a7=Int(Rnd()*5)+1 最后一位是特别号,只能在15之间 显示随机产生的七位号码 TextBox1.Text=CStr(a1):TextBox2.Text=CStr(a2)TextBox3.Text=CStr(a3):TextBox4.Text=CStr(a4)TextBox5.Text=CStr(a5):TextBox6.Text=CStr(a6)TextBox7.Text=CStr(a7)End Sub说明:该过程每隔200毫秒执行一个,产生7个随机数并显示在文本框中,产生摇奖的效果。14运行程序,单击“摇奖”按钮,会发现各个文本框中不停地出现随机数。15编写Button2按钮的Click事件过程代码,如下。Private Sub Button2_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button2.Click Timer1.Enabled=False 关闭定时器,结束摇号 Button3.Enabled=True 公布按钮可用 Button2.Enabled=False 停止按钮不可用 End Sub16运行程序,单击“摇奖”按钮摇奖后,单击“停止”按钮,会发现文本框中的数固定了下来,此时的值就可以认为是中奖号码。17编写Button3按钮的Click事件过程代码,如下。Private Sub Button3_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button3.Click Dim Frm As New frmTicketPublish 定义一个frmTicketPublish类的对象 Frm.Show()显示该对象,窗体将显示出来 End Sub18编写Button4按钮的Click事件过程代码,如下。Private Sub Button4_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button4.Click Dim frmExitDialog As New frmExit 根据退出窗体生成对象 If frmExitDialog.ShowDialog()=DialogResult.OK Then 如果单击了“确定”按钮,则退出 Me.Close()关闭本窗体 Application.Exit()退出应用程序 End If End Sub说明:(1)上述代码首先产生一个frmExit窗体的实例,然后调用该窗体实例的ShowDialog方法把该窗体实例以对话框的形式显示出来,如果用户在对话框中单击了“是”按钮,则退出应用程序。(2)在VB.NET中,除了可以使用Windows自带的标准对话框外,如MsgBox、InputBox等,用户还可以把自己设计的窗体定义成对话框。使用自定义对话框有以下几个要点。将窗体的FormBorderStyle属性值设置为FixedDialog;根据需要向窗体上添加控件;使用窗体的ShowDialog方法显示窗体,即显示出对话框。19运行程序,单击“退出”按钮,将会出现如图7-6所示的对话框,单击“是”按钮退出应用程序。20在“解决方案资源管理器”中双击“frmTicketPublish”窗体并切换到该窗体,在所有代码之前,加上如下代码。Imports Task7_1.frmTicketReward21编写“frmTicketPublish”窗体的Load事件过程代码,如下。Private Sub frmTicketPublish_Load(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles MyBase.Load 把中奖号码显示在各文本框中 TextBox1.Text=CStr(a1):TextBox2.Text=CStr(a2)TextBox3.Text=CStr(a3):TextBox4.Text=CStr(a4)TextBox5.Text=CStr(a5):TextBox6.Text=CStr(a6)TextBox7.Text=CStr(a7)End Sub说明:在窗体中可以访问被引入的其他窗体中定义的全局共享变量。22为该窗体的“关闭”按钮编写Click事件过程代码,如下。Private Sub Button1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles Button1.Click Me.Close()关闭本窗体 End Sub23运行程序,单击“摇奖”按钮进行摇奖,单击“停止”按钮产生中奖号码,单击“公布”按钮将会出现如图7-5所示的“中奖号码公布”窗口,单击“关闭”按钮将加到“摇奖”窗口。24保存项目,至此本任务全部完成。归纳说明:Windows应用程序很少只由一个窗体组成,一般情况下一个应用程序均拥有很多个窗体。VB.NET项目刚建立时只有一个名为Form1的窗体,要建立多窗体应用程序应首先为项目添加窗体。在VB.NET中还可以任意指定其他窗体为启动窗体。本任务通过体育彩票摇奖程序的实现过程,讲解了多窗体程序设计的方法与注意事项。7.2 7.2 任务任务7-27-2:简易文本编辑器程序:简易文本编辑器程序丰富格式丰富格式文本框、菜单、对话框、工具栏、状态栏等的应用文本框、菜单、对话框、工具栏、状态栏等的应用 任务7-2描述:编写一个简易文本编辑器程序,要求通过菜单能够实现文件的新建、打开、保存、另存为、退出等文件或应用程序操作功能,能够实现撤消、重做、剪切、复制、粘贴、删除、全选等编辑操作功能,能够实现设置文本的字体、颜色、背景色等格式操作功能。对于常用的功能还要通过工具栏实现,还应具有状态栏对当前的状态进行提示。程序的设计界面如图7-10所示,程序的运行界面如图7-11所示。图7-10 程序设计界面 图7-11 程序运行界面任务分析:本 任 务 涉 及 到 菜 单、工 具 栏、状 态 栏 等 多 种 控 件,中 间 涉 及 到 多 种 编 程 技 巧,分 析 起 来 较 困 难,将 在讲 解 的 过 程 中 一 步 一 步 地 加 上 详 细 分 析。任务实现:1启动VB.NET,新建一个项目,项目类型为“Windows应用程序”,项目的存放位置为“D:VBTASKCH07”,项目名为“Task7_2”。2把Form1窗体的Text属性值设置为“简易文本编辑器”,把它的Name属性值设置为“frmTextEditor”。单击“解决方案资源管理器”中的“Form1.VB”窗体,然后在属性窗口中把它文件名属性设置为“frmTextEditor.vb”。然后执行【项目】【Task7_2属性】命令,在出现的“Task7_2属性页”对话框中把“启动对象”设置为“frmTextEditor”。3在工具箱上找到MainMenu(主菜单)控件图标“”,并把该控件添加到窗体上,标题栏下将出现菜单栏,如图7-12所示。图7-12 添加了MainMenu控件后出现的菜单栏 图7-13 在菜单栏中输入了“文件&F”菜单项4在“请在此处输入”文字上单击,然后输入文字“文件&F”,如图7-13所示。然后在属性窗体中把该菜单项的名称设置为“MenuItem1”。5在“文件F”下面的“请在此处输入”文字上单击,输入文字“新建&N”,然后在属性窗口中把Name属性值设置为MenuItem1_1,在属性窗口中选中Shortcut属性,单击其后的向下箭头按钮,在出现的列表中选择快捷键“CtrlN”,如图7-14所示。图7-14 为“文件&F”菜单输入了“新建&N”菜单项 图 7-15 设计好的“文件”菜单6使用同样的方法,为“文件F”菜单再添加5个菜单项,菜单项的标题文字、名称、快捷键如表7-4所示。设置好的文件菜单如图7-15所示。表7-4 “文件”菜单中的其它菜单项及其属性设置菜单标题文字(Text属性值)菜单项名(Name属性值)快捷键(ShortCut属性值)打开&O.MenuItem1_2CtrlO保存SMenuItem1_3CtrlS另存为A.MenuItem1_4None-MenuItem1_5None退出&XMenuItem1_6CtrlX说明:菜单项的常用属性如下:(1)Text属性:该属性用来获取或设置一个值,通过该值显示菜单项标题。当使用Text属性为菜单项指定标题时,还可以在字符前加一个“&”号来指定热键(访问键,即加下划线的字母)。例如,若要将“File”中的“F”指定为访问键,应将菜单项的标题指定为“&File”。(2)Checked属性:该属性用来获取或设置一个值,通过该值指示选中标记是否出现在菜单项文本的旁边。如果要放置选中标记在菜单项文本的旁边,属性值为True,否则属性值为False。默认值为False。(3)DefaultItem属性:该属性用来获取或设置一个值,通过该值指示菜单项是否为默认菜单项。值为True时,是默认菜单项,值为False时,不是默认菜单项。菜单的默认菜单项以粗体的形式显示。当用户双击包含默认项的子菜单后,默认项被选定,然后子菜单关闭。(4)Enabled属性:该属性用来获取或设置一个值,通过该值指示菜单项是否可用。值为True时表示可用,值为False时表示当前禁止使用。(5)RadioCheck属性:该属性用来获取或设置一个值,通过该值指示选中的菜单项的左边是显示单选按钮还是选中标记。值为True时将显示单选按钮标记,值为False时显示选中标记。(6)Shortcut属性:该属性用来获取或设置一个值,该值指示与菜单项相关联的快捷键。(7)ShowShortcut属性:获取或设置一个值,该值指示与菜单项关联的快捷键是否在菜单项标题的旁边显示。如果快捷组合键在菜单项标题的旁边显示,该属性值True,如果不显示快捷键,该属性值为False。默认值为True。(8)MdiList属性:该属性用来获取或设置一个值,通过该值指示是否用在关联窗体内显示的多文档界面(MDI)子窗口列表来填充菜单项。若要在该菜单项中显示MDI子窗口列表,则设置该属性值为True,否则设置该属性的值为 False。默认值False。7单击“文件F”右边的“请在此处输入”,输入“编辑&E”形成编辑菜单,在属性窗口设置“编辑”菜单的名称为“MenuItem2”。再为“编辑”菜单输入7个菜单项,菜单项的标题文字、名称、快捷键如表7-5所示。设置好的文件菜单如图7-16所示。表7-5 “编辑”菜单中的菜单项及其属性设置菜单标题文字(Text属性值)菜单项名(Name属性值)快捷键(ShortCut属性值)撤消UMenuItem2_1CtrlZ重做RMenuItem2_2CtrlY剪切TMenuItem2_3CtrlX复制CMenuItem2_4CtrlC粘贴PMenuItem2_5CtrlP删除DMenuItem2_6全选AMenuItem2_7CtrlA图7-16 设计好的“编辑”菜单 图7-17 设计好了的“格式”菜单8采用类似的方法设计格式菜单,设计好的格式菜单如图7-17所示,各菜单项及其属性设置如表7-6所示。表7-6 “格式”菜单中的菜单项及其属性设置菜单标题文字(Text属性值)菜单项名(Name属性值)快捷键(ShortCut属性值)格式&OMenuItem3None字体&F.MenuItem3_1None颜色C.MenuItem3_2None-MenuItem3_3None背景MenuItem3_4None白色背景MenuItem3_4_1None灰色背景MenuItem3_4_2None注意:还需把“MenuItem3_4_1”菜单项的RadioCheck属性值设置为True,把它的Checked属性值设置为True。把“MenuItem3_4_2”菜单项的RadioCheck属性值设置为False。9在工具箱中找到工具栏图标“”,并为窗体添加一个ToolBar控件(工具栏控件),控件名称为ToolBar1,如图7-18所示。图7-18 添加的工具栏控件说明:对读者来说,工具栏并不陌生,如Word中的常用工具栏、格式工具栏等。工具栏是由一系列的图标按钮组成,形象化的图标与功能的对应,使应用程序界面具有更好的交互性。在VB.NET中,要实现工具栏,需要使用两个控件:ImageList控件和ToolBar控件。10在工具箱中找到图像列表控件图标“”,并向窗体上添加一个ImageList控件(图像列表控件),控件名为ImageList1。11用鼠标单击ImageList1控件,然后在“属性”窗口中选中“Images”属性,单击其后的“”按钮,将会出现如图7-19所示的“Image集合编辑器”对话框。12单击“添加”按钮,将会出现“打开”文件对话框,在该对话框中定义要添加到工具栏上的按钮图片文件,然后按“打开”按钮,反复操作直到需要的图形文件全部添加到“Image 集合编辑器”的成员列表中,如图7-20所示(添加了“新建”、“打开”、“保存”三个操作的按钮图片)。然后按“确定”按钮关闭“Image集合编辑器”对话框。图7-19 “Image集合编辑器”对话框图7-20 添加了图片文件后的“Image集合编辑器”对话框13单击ToolBar1工具栏控件,设置它的ImageList属性值为“ImageList1”。然后再在“属性”窗口中单击“Buttons”属性后面的“”按钮,将会出现“ToolBarButton集合编辑器”对话框。14在该窗口中单击“添加”按钮,将会出现第一个按钮,并且在窗口的右边将出现该按钮的属性设置窗口,通过设置ImageIndex属性可以指定在按钮上显示的图片文件。图7-21是添加了三个按钮后的“ToolBarButton集合编辑器”对话框。图7-21 添加了三个工具栏按钮后的“ToolBarButton集合编辑器”对话框15单击“确定”按钮,关闭“ToolBarButton集合编辑器”对话框。设计好的工具栏如图7-22所示。图7-22 设计好了的工具栏16在工具箱中找到状态栏图标“”,并为窗体添加一个StatusBar控件(状态栏控件),控件名称为StatusBar1。说明:状态栏一般位于应用程序窗口的下面,用来显示程序的状态。17选中StatusBar1控件,在“属性”窗口中选中Panel属性,单击其后的“”按钮,打开“StatusBarPanel集合编辑器”对话框,在该编辑器中通过单击“添加”按钮为StatusBar添加三个面板,如图7-23所示。注意可以在该窗口的右边设置每个面板的属性,如Name等。图7-23 添加了三个Panel面板的“StatusBarPanel集合编辑器”对话框18单击“确定”按钮返回程序设计界面,选中StatusBar控件,把它的ShowPanels属性值设置为True。设计好的状态栏如图7-24所示。图7-24 设计好的状态栏19由于要在状态栏的某一Panel中显示当前时间,为实现该功能可添加一个Timer控件,设置该控件的Interval属性值为500,Enabled属性值为True。20在工具箱中找到丰富格式文本框图标“”,并为窗体添加一个RichTextBox控件(丰富格式文本框控件),控件名称为RichTextBox1,控件位置任意,在运行时由程序自动设置成充满除工具栏和状态栏外的所有窗体部分。至此界面设计基本完成,设计好的界面如图7-10所示(没有对话框控件)。21为窗体添加两个模块级变量,代码如下。Dim Fname As String 存放正在编辑的文件名,如果新建的文件尚末保存,则值为空串 Dim FExtName As String 扩展名 22编写一个名为“RichTextBoxResize”的通用过程,其作用是使丰富格式文本框充满除工具栏和状态栏外的所有空间。该过程在窗体加载时和改变大小时被调用。该过程使丰富格式文本框充满除工具栏和状态栏外的所有空间 Private Sub RichTextBoxResize()设置丰富格式文本框的起始位置为工具栏下面的最左上角 RichTextBox1.Top=ToolBar1.Height RichTextBox1.Left=0 设置丰富格式文本框的宽度与窗体的用户区宽度一样 RichTextBox1.Width=Me.ClientSize.Width 设置丰富格式文本框的高度为窗体用户区高度减去工具栏的高及状态栏的高度 RichTextBox1.Height=Me.ClientSize.Height-ToolBar1.Height StatusBar1.Height End Sub23在工具箱中找到“保存文件”对话框控件的图标“”,为窗体添加一个SaveFileDialog控件,该控件主要用来弹出Windows中标准的“保存文件”对话框。24编写一个名为“SaveAs”的通用过程,代码如下。该过程弹出“另存为”对话框,供用户选择或输入要保存的文件名,并把RichTextBox1中的文本保存到该文件中去 Private Sub SaveAs()SaveFileDialog1.Filter=文本文件(*.txt)|*.txt|RTF格式文件(*.RTF)|*.RTF SaveFileDialog1.FilterIndex=1 设置当前文件过程器 SaveFileDialog1.Title=保存文件 设置对话框的标题 SaveFileDialog1.InitialDirectory=Application.StartupPath 初始目录设为启动路径 SaveFileDialog1.RestoreDirectory=True 自动恢复初始目录 SaveFileDialog1.ShowDialog()弹出另存为对话框 Fname=SaveFileDialog1.FileName 获取保存的文件名 If(Fname )Then 如果输入了文件名 If(SaveFileDialog1.FilterIndex=1)Then 如果是文本文件 RichTextBox1.SaveFile(Fname,RichTextBoxStreamType.PlainText)文本文件 FExtName=txt Else RichTextBox1.SaveFile(Fname,RichTextBoxStreamType.RichText)RTF文件 FExtName=rtf End If Me.Text=Fname+-简单文件编辑器 设置标题 End If RichTextBox1.Modified=False 保存后把RichtextBox1.Modified属性值变为False StatusBar1.Panels(1).Text=已保存 End Sub说明:(1)请读者参考语句后的说明,体会“另存为对话框”控件各属性的含义。(2)该过程实现类似于“另存为”菜单的功能。在保存文件且需要指定文件名的情况下可调用该过程。(3)本例调用了RichTextBox控件的SaveFile方法,使用了RichTextBox控件的Modified属性。RichTextBox是一种既可以输入文本、又可以编辑文本的文字处理控件,它在工具箱中的图标为“”。与TextBox控件相比,RichTextBox控件的文字处理功能更加丰富,不仅可以设定文字的颜色、字体,还具有字符串检索功能。另外,RichTextBox控件还可以打开、编辑和存储.rtf格式文件、ASCII文本格式文件及Unicode编码格式的文件。下面详细介绍一下该控件的常用属性和方法。RichTextBox控件的常用属性前面介绍的TextBox控件所具有的属性,RichTextBox控件基本上都具有,除此之外,该控件还具有一些其它属性。RightMargin属性:用来设置或获取右侧空白的大小,单位是像素。通过该属性可以设置右侧空白,如希望右侧空白为50像素,可使用如下语句:RichTextBox1.RightMargin=RichTextBox1.Width-50;Rtf属性:该属性用来获取或设置 RichTextBox 控件中的文本,包括所有 RTF 格式代码。可以使用此属性将 RTF 格式文本放到控件中以进行显示,或提取控件中的RTF 格式文本。此属性通常用于在RichTextBox控件和其它 RTF 源(如 Microsoft Word 或 Windows 写字板)之间交换信息。SelectedRtf属性:该属性用来获取或设置控件中当前选定的 RTF 格式的格式文本。此属性使用户得以获取控件中的选定文本,包括 RTF 格式代码。如果当前未选定任何文本,给该属性赋值,将把所赋的文本插入到插入点处。如果选定了文本,则给该属性所赋的文本值将替换掉选定文本。SelectionColor属性:该属性用来获取或设置当前选定文本或插入点处的文本颜色。SelectionFont属性:该属性用来获取或设置当前选定文本或插入点处文本的字体。常用方法前面介绍的TextBox控件所具有的方法,RichTextBox控件基本上都具有,除此之外,该控件还具有一些其它方法。Redo方法 该方法用来重做上次被撤消的操作。调用的一般格式如下:RichTextBox对象.Redo()该方法无参数。Find方法该方法用来从RichTextBox控件中查找指定的字符串。经常使用的调用格式如下:格式1:RichTextBox对象.Find(str)功能:在指定的“RichTextBox”控件中查找文本,并返回搜索文本的第一个字符在控件内的位置。如果未找到搜索字符串或者str参数指定的搜索字符串为空,则返回值为-1。格式2:RichTextBox对象.Find(str,RichTextBoxFinds)功能:在“RichTextBox对象”指定的文本框中搜索 str 参数中指定的文本,并返回文本的第一个字符在控件内的位置。如果返回负值,则未找到所搜索的文本字符串。还可以使用此方法搜索特定格式的文本。参数RichTextBoxFinds指定如何在控件中执行文本搜索,其取值及其含义如表7-7所示。表7-7 RichTextBoxFinds参数的取值及含义成员名称说明MatchCase仅定位大小写正确的搜索文本的实例。NoHighlight如果找到搜索文本,不突出显示它。None定位搜索文本的所有实例,而不论是否为全字匹配。Reverse搜索在控件文档的结尾处开始,并搜索到文档的开头。WholeWord仅定位全字匹配的文本。格式3:RichTextBox对象.Find(str,start,RichTextBoxFinds)功能:此版本的 Find 方法与前面的格式2基本类似,不同的只是通过设置搜索起始位置来缩小文本搜索范围,start参数表示开始搜索的位置。此功能使用户得以避开可能已搜索过的文本或已经知道不包含要搜索的特定文本的文本。如果在 options 参数中指定了 RichTextBoxFinds.Reverse 值,则 start 参数的值将指示反向搜索结束的位置,因为搜索是从文档底部开始的。SaveFile方法 该方法用来把RichTextBox中的信息保存到指定的文件中,调用格式有以下三种:格式1:RichTextBox对象名.SaveFile(文件名)功能:将 RichTextBox控件中的内容保存为RTF 格式文件中。格式2:RichTextBox对象名.SaveFile(文件名,文件类型)功能:将 RichTextBox控件中的内容保存为“文件类型”指定的格式文件中。格式3:RichTextBox对象名.SaveFile(数据流,数据流类型)功能:将 RichTextBox控件中的内容保存为“数据流类型”指定的数据流类型文件中。其中,文件类型或数据流类型的取值及含义如表7-8所示。表7-8 文件类型或数据流类型的取值及含义取值含义RichTextBoxStreamType.PlainText纯文本流RichTextBoxStreamType.RichTextRTF格式流RichTextBoxStreamType.UnicodePlainText采用Unicode编码的文本流LoadFile方法使用LoadFile方法可以将文本文件、RTF文件装入RichTextBox控件。主要的调用格式有以下三种。格式1:RichTextBox对象名.LoadFile(文件名)功能:将 RTF 格式文件或标准 ASCII 文本文件加载到 RichTextBox 控件中。格式2:RichTextBox对象名.LoadFile(数据流,数据流类型)功能:将现有数据流的内容加载到 RichTextBox 控件中。格式3:RichTextBox对象名.LoadFile(文件名,文件类型)功能:将特定类型的文件加载到 RichTextBox 控件中。注意:文件类型和数据流格式见表7-8。25编写一个名为“NotSaveProcess”的通用过程,代码如下。Private Sub NotSaveProcess()没有保存处理 If RichTextBox1.Modified Then 如果RichTextBox1中的文本被修改,则提示是否保存 If MsgBox(尚未保存,是否保存?,MsgBoxStyle.YesNo,保存提示)=_ MsgBoxResult.Yes Then 需要保存处理 If Fname=Then 如果文件名为空,文件尚未命名,则是第一次保存 Call SaveAs()调用SaveAs过程 Else 文件已经命名,已经保存过 If(FExtName=txt)Then 如果是文本文件 文本文件保存 RichTextBox1.SaveFile(Fname,RichTextBoxStreamType.PlainText)Else RTF文件保存 RichTextBox1.SaveFile(Fname,RichTextBoxStreamType.RichText)End If End If End If End If End Sub说明:该过程首行测试文件是否被修改过,如果已经修改则提示是否保存,再根据用户的选择决定是否保存文件。为了防止对文件的修改丢失,可在“新建”、“打开”、“退出”等菜单命令执行时选择调用本过程,测试正在处理的文件是否被修改,如果被修改,让用户决定是否保存。26编写一个名为“NewFile”的通用过程,代码如下。Private Sub NewFile()Call NotSaveProcess()调用过程NotSaveProcess实现没有保存处理 Fname=文件名为空 FExtName=txt 文件的扩展名为空 RichTextBox1.Text=清空RichTextBox1中显示的文本 Me.Text=新建-简单文件编辑器 设置标题 RichTextBox1.Modified=False StatusBar1.Panels(1).Text=已保存 End Sub说明:该过程在用户选择了“新建”菜单项,或单击了工具栏上的“新建”按钮时将被调用。27在窗体的设计界面上,双击“文件&F”菜单中的“新建”菜单项,在出现的代码窗体中,编写该菜单项的事件过程代码,如下。“新建”菜单项 Private Sub MenuItem1_1_Click(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles MenuItem1_1.Click Call NewFile()调用NewFile过程 End Sub说明:菜单项的常用事件主要有Click事件,该事件在用户单击菜单项时发生。28运行程序,将会出现一个空白的输入区域,标题为“新建-简单文件编辑器”。在空白输入区域中输入任意字符。选择“文件”菜单中的“新建”菜单项,将会出现如图7-25所示的“保存提示”对话框。单击“是”按钮,将会出现如图7-26所示的“保存文件”对话框,该对话框是调用SaveFileDialog1控件的ShowDialog方法弹出的。在该对话框中用户可以选择或输入保存的文件类型、保存位置和保存的文件名。图7-25 “保存提示”对话框图7-26 “保存文件”对话框29在工具箱中找到“打开文件”对话框控件(O

    注意事项

    本文(VBNET程序设计实用教程7.ppt)为本站会员(hwp****526)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档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  

    收起
    展开