龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VB开发 >

VisualBasic属性、方法和事件二

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
单击按钮执行操作 使用户与应用程序交互的最简便的方法是给用户提供一个按钮。可以用VisualBasic提供的CommandButton控件,或利用包含图形的Image控件,如一个图标,来创建自己的“按钮

单击按钮执行操作
  
  使用户与应用程序交互的最简便的方法是给用户提供一个按钮。可以用VisualBasic提供的CommandButton控件,或利用包含图形的Image控件,如一个图标,来创建自己的“按钮”。
  
  使用CommandButton
  大多数VisualBasic应用程序都有CommandButton,使用户通过简单的敲击按钮来执行操作。当用户选中按钮时,不仅会执行相应操作,还会使该按钮看上去象被按下并释放一样。无论何时,只要用户单击按钮,就会调用Click事件过程。将代码写入Click事件过程,执行想要执行的动作。
  在程序执行时,有多种方法可以选中CommandButton:
  用鼠标单击按钮。
  按TAB键把焦点移到相应按钮上,然后按SPACE键或ENTER键选中该按钮。参阅本章后面的“焦点概述”。
  按CommandButton的快捷键(ALT 下划线的字符)。
  在代码中设CommandButton的Value属性为True。cmdClose.Value=True
  在代码中调用CommandButton的Click事件。cmdClose_Click
  如果该CommandButton是窗体的缺省命令按钮,既使将焦点移到其它不是CommandButton的控件上,按下回车键也会选中该按钮。在设计时,通过设置某按钮的Default属性为True,指定它为窗体的缺省CommandButton。
  如果该CommandButton是窗体的缺省的取消按钮,即使把焦点移到其它控件上,也能通过按ESC键选中该按钮。在设计时,通过设置某按钮的Cancel属性为True,指定它为窗体的缺省的取消按钮。所有这些操作都使VisualBasic调用Click事件过程。
  
  “测试按钮”应用程序
  利用Caption属性可以在按钮上显示文字,告诉用户该按钮的功能。在图3.4中,在控件示例应用程序的测试按钮范例中包含一个Caption属性为"ChangeSignal"的CommandButton(此例的工作为Controls.vbp示例应用程序中的Buttons.frm)。
  注意,S是这个按钮的快捷键,用一条下划线表示。在Caption属性的正文内插入一个(&)符号,将使得此符号后面的字符成为该按钮的快捷键(例如,Change&Signal)。
  用户单击CommandButton,将执行该CommandButton的Click事件过程中的代码。在这个范例中,每次单击按钮,将变换一个不同的交通灯图标。
  详细信息关于CommandButton的属性的详细信息,请参阅第七章“使用VisualBasic的标准控件”。
  
  用于显示和输入文本的控件
  
  Label和TextBox控件是用于显示和输入文本的。让应用程序在窗体中显示文本时使用Label,允许用户输入文本时用TextBox。Labels中的文本为只读文本,而TextBox中的文本为可编辑文本。
  可由用户编辑的文本,例如一个顺序条目   TextBox
  字段或一个密码框
  只能显示的文本,例如在窗体中标识一个   Label
  字段或给用户显示指令
  
  Labels和TextBoxes将在以下部分讨论:
   用Label显示文本(vbconUsingLabels)使用Label控件的基本知识。
   使用TextBox(vbconWorkingWithTextBox)使用TextBox的基本知识。
  
  用Label显示文本
  Label控件显示的文本用户不能直接修改。如TextBox和ScrollBar这些没有自己的Caption属性的控件,可以用Label标识。在Label中实际显示的文本是由Caption属性控制的,该属性可以在设计时在“属性”窗口中设置或在运行时用代码赋值。
  在缺省情况下,标题是Label控件中唯一的可见部分。但是,如果把BorderStyle属性设成1(可以在设计时进行),那么Label就有了一个边框,看起来像一个TextBox。还可以通过设置Label的BackColor、BackStyle、ForeColor和Font属性来,改变Label的外观。
  
  改变Label尺寸以适应其内容
  设计时可在“属性”窗口中指定单行Label的标题。但是如果要输入一个较长的或在运行时可能变化的标题,该怎么办呢?Label提供了两种属性:AutoSize和WordWrap,用于帮助您改变控件尺寸以适合较长或较短的标题。
  AutoSize属性决定控件是否自动改变尺寸以适应其内容。如该属性设为True,Label就会根据其内容进行水平方向变化,如图3.5所示。
  
  WordWrap属性使Label根据其内容进行垂直方向变化,而保持其宽度不变,如图3.6所示。本例的工作版,请参阅应用程序示例Controls.vbp中的WordWrap.frm。
  注意如果在Controls.vbp中运行AotoSize示例,就会发现为了同时使用WordWrap,必须两个复选框都选中。这是因为,要想使Label的WordWrap属性起作用,就必须设置AutoSize为True。只有在一个单字的宽度超过控件的当前宽度时,Label的宽度才会增加。
  详细信息关于Label控件属性的详细信息,请参阅第七章“使用VisualBasic的标准控件”。
  
  使用TextBoxes
  TextBox是一种通用控件,可以由用户输入文本或显示文本。除非把TextBox的Locked属性设为True,否则不能用TextBox显示不希望用户更改的文本。
  TextBox中显示的实际文本是受Text属性控制的。Text属性可以用三种方式设置:设计时在“属性”窗口进行、运行时通过代码置或在运行时由用户输入。通过读Text属性能在运行时检索TextBox的当前内容。
  多行TextBox和WordWrap
  TextBox在缺省情况下只显示单行文本,且不显示ScrollBar。如果文本长度超过可用空间,则只能显示部分文本。通过设置MultiLine和ScrollBars两种属性(只能在设计程序时设置),可以改变TextBox的外观和行为。
  注意不要把ScrollBars属性与ScrollBar控件混淆,ScrollBar控件并不属于TextBox,它具有自己的属性集。
  把MultiLine属性设为True,可以使TextBox在运行时接受或显示多行文本。只要没有水平方向ScrollBar,多行TextBox中的文本会自动按字换行。ScrollBars属性的缺省值被设置为0(None)。自动按字换行省去用户在行尾插入换行符的麻烦。当一行文本已超过所能显示的长度时,TextBox自动将文本折回到下一行显示。
  在设计时,不能在“属性”窗口输入换行符。在过程中,可以通过插入一个回车加上换行符(ANSI字符13和0)来产生一个行断点。也可以用常量vbCrLf插入一个回车与换行符组合。例如,下面的事件过程是在加载窗体时,把两行文本放入一个多行TextBox(Text1)中的示例。
  SubForm_Load()
    Text1.Text="Herearetwolines"_
    &vbCrLf&"inatextbox"
  EndSub
  
  使用TextBox中的文本
  利用TextBox的SelStart、SelLength和SelText属性,可以控制TextBox的插入点和选择行为。这些属性仅能在运行时使用。
  当一个TextBox首次得到焦点时,TextBox缺省的插入点和光标位置在文本的最左边。用户可以用键盘和鼠标移动它们。当TextBox失去焦点而后再得到时,插入点位置与用户最后设置的位置一样。
  在有些情况下,它可能与用户设置不一致。如:在字处理应用程序中,用户会希望新字符出现在已有文本后面;在数据项应用程序中,用户会希望他的输入替换原有条目。使用SelStart和SelLength属性,用户可以根据需要改变TextBox的行为。
  SelStart属性是一个数字,指示文本串内的插入点,其中0表示最左边的位置。如果SelStart属性值大于或等于文本中的字符数,那么插入点将被放在最后一个字符之后,如图3.7所示。该例子的工作版,请参阅应用程序示例Controls.vbp中的Text.frm。  SelLength属性是一个设置插入点宽度的数值。把SelLength设为大于0的值,会选中并突出显示从当前插入点开始的SelLength个字符。图3.8显示选择的性能。
  如果有一段文本被选中,此时用户键入的文字将替换被选中的文本。有些情况下,也可以用粘贴命令用新文本替换原有的文本。SelText属性是一串文本,可以在运行时给它赋值以替换当前选中的文本。如果没有选中的文本,SelText将在当前插入点插入文本。
  详细信息关于TextBox控件的属性的详细信息,请参阅第七章“使用VisualBasic的标准控件”。
    
  
  详细信息关于TextBox控件的属性的详细信息,请参阅第七章“使用VisualBasic的标准控件”。
  

->

精彩图集

赞助商链接