vb.net 的 Label 控件
label(标签)控件用于显示文本,是设计应用程序界面时经常要用到的控件之一, 主要是用于显示其他控件名称,描述程序运行状态或标识程序运行的结果信息等 等,响应程序的事件或跟踪程序运行的结果。
使用 Label 控件的情况很多,但用 Label 控件显示的信息一般都不是描述 Label 控件自身的特性,而是描述其他控件的属性或特征(如名称等)。例如,可用 Label 控件为文本框(TextBox)、列表框(ListBox)、组合框(ComboBox)等 控件添加描述性的信息。
还可以编写代码改变 Label 控件显示的文本内容以响应程序运行时的事件或状 态信息。如果一个程序在运行的过程中,有些对象随着不同时间段,各种信息都 在变化,这时就可以用 Label 控件处理状况消息。
注意:Label 控件不接受焦点
1.设置标签的文本
在 Label 控件中显示文本,使用“Text”属性。在开发应用程序时,首先选择 Label 控件,再选择“属性窗口”,再在“属性窗口”中设置该属性为某个字符 串量即可。
“Text”属性的长度最长可设置为 1024 字节。
2.设置标签中文本属性
Label 控件中的文本默认时的排列方式为居左(从左侧起依次排列到右侧),通 过设置“TextAlign”属性可以改变排列方式,设置“TextAlign”为“Right”, 排列方式为居右,设置“TextAlign”为“center”,排列方式为居中。 3.标签的其他属性
描述 Label 控件的边框的属性是 BorderStyle,如果将 BorderStyle 属性设成 FixedSingle(可以在设计时进行),那么 Label 控件就有了一个边框;如果将 BorderStyle 属性设成 Fixed3D,则 Label 控件就有了一个立体边框,看起来象 一个 TextBox(文本框)。还可以通过设置 Label 控件的 BackColor(背景颜色)、 ForeColor(字体颜色)和 Font(字体)等属性来改变 Label 控件的其他外观。 4.用标签创建访问键
可以将 Text 属性中的字符定义成访问键,想要将 Label 控件的 Text 属性定义成 访问键,首先要将 UseMnemonic 属性设置为 True.定义了 Label 控件的访问键后, 用户按[Alt+指定的字符]组合键,就可将焦点按[Tab]键次序移动到下一个控件。 在作为访问键的字母之前添加一个连字符(&),就可为其他不具有标题的控件 (如 TextBox 控件)创建访问键。上面已经提到了标签不接受焦点,因此焦点会 按照[Tab]键次序自动移动到下一控件处。可用这种技术为文本框、图片框、组 合框、列表框、驱动器列表框、目录列表框、网络和图像等指定访问键。要将标 签指定为控件的访问键,请执行下述的步骤: (1)首先绘制标签,然后再绘制控件。或者以任意顺序绘制控件,并将标签的 TabIndex 属性设置为控件的 TabIndex 属性减 1。
(2)在标签的 Text 属性中用连字符为标签指定访问键。
注意:有时可能要在 label 控件中显示连字符而不是创建它们的访问键。如果在 一次记录集中,数据包含连字符,而且要将 Label 控件绑定到记录集的某个字段,
就会出现所说情况。为在 Label TextBox 控件中显示连字符,应将 UseMnemonic 属性设置为 False.
vb.net 的 Button 控件
Button(按钮)控件一般接受鼠标单击事件被用来启动、中断或结束一个进程(相 当于 Visual Basic 以前版本的 CommandButton 控件)。单击 Button 控件时将调 用已写入 Click 事件过程中的过程。Button 控件在大多数 Visual Basic 应用程 序中都会用到,用户可以单击按钮执行操作。单击时,按钮不仅能执行相应的操 作,而且看起来与被按下和松开一样。
1.向窗体添加按钮
在应用程序中很可能要使用多个按钮。就象在其他容器控件上绘制按钮那样,从 工具箱里把 Button 控件直接拖到窗体上即可。可用鼠标调整按钮的大小,也可 通过设置 Location(坐标,用来确定控件相对窗体左上方顶点的位置)和 Size (大小,第一个参数代表宽度,第二个参数代表高度)属性进行调整。 2.设置按钮显示文本
可用 Text 属性改变按钮上显示的文本。设计时,可在控件的“属性窗口”中设 置此属性。在设计时设置 Text 属性后将动态更新按钮文本。Text 属性最多包含 255 个字符。若标题超过了命令按钮的宽度,则会折到下一行。但是,如果控件 无法容纳其全部长度,则标题会被剪切。可以通过设置 Font 属性改变在命令按 钮上显示的字体。
3.创建键盘快捷方式
可通过 Text 属性创建按钮的访问键快捷方式。为此,只需在作为访问键的字母 前添加一个连字符(&)。例如,要为标题“Ok”创建访问键,应在字母“O”前 添中连字符,于是得到“&Ok”。运行时,字母“O”将带下划线,同时按 Alt+O 键就可执行单击按钮程序所执行的动作。 注意:如果不创建访问键,而又要使标题中包含连字符,应添加两个连字符(&&)。 这样,在标题中就只显示一个连字符。
4.选定按钮
运行时,可用鼠标或键盘通过下述方法选定按钮:
(1)用鼠标单击按钮;
(2)按 Tab 键,将焦点转移到按钮上,然后按 Enter 键选定按钮; (3)按按钮的访问键([Alt+带有下划线的字母])。
5.Click 事件
运行时单击按钮,将触发按钮的 Click 事件并执行写入 Click 事件过程中的代码, 同时,单击按钮的过程也将生成 MouseMove、MouseLeave、MouseDown 和 MouseUp 等事件。如果要在这些相关事件中附加事件过程,则应确保操作不发生冲突。对 控件的操作不同,这些事件过程发生的顺序也不同。Button 控件的单击事件发 生顺序为:
MouseMove→MouseDown→Click→MouseUp→MouseLeave 注意:如果用户试图双击按钮控件,则其中每一次单击都将分别处理;也即按钮
控件不支持双击事件。
6.增强按钮的视觉效果
按钮控件象复选框和选项按钮一样,可通过 Image 属性设置 Button 控件上的图 标以增强视觉效果,然后设置图标(图片)的属性:ImageAlign 显示图标(图 片)的位置。通过设置 ImageIndex(图片在图片框中的索引)以及 ImageList (图片框)则可实现如下的效果,比如要向按钮添加图标或位图,或者在单击、 禁止控件时显示不同的图象等等。
vb.net 的 Textbox 控件
TextBox(文本框)控件也是在应用程序中经常要用到的控件之一,主要用来在 程序运行时接受用户输入,也可以显示运行的结果,以完成用户与程序的交互。
TextBox 控件在工具箱中的图标如图所示:
TextBox 是一种通用控件,可以由用户输入文本或显示文本。除非把 TextBox 的 Locked 属性设为 true,否则不能用 TextBox 显示不希望用户更改的文本。TextBox 中显示的实际文本是受 Text 属性控制的。Text 属性可用三种方式设置:设计时 在“属性”窗口进行、运行时通过代码设置或在运行时由用户输入。 1.设置文本框的文本
通过读 Text 属性能在运行时检索 TextBox 的当前内容。TextBox 在缺省情况下 只显示单行文本,且不显示 ScrollBar(滚动条).如果文本长度超过可用空间, 则只能显示部分文本。通过设置 MultiLine 和 ScrollBars 两种属性(只能在设 计程序时设置),可以改变 TextBox 的外观和行为。注意:不要把 ScrollBars 属性与 ScrollBar 控件混淆,ScrollBar 控件并不属于 TextBox,它具有自己的 属性集。把 MultiLine 属性设为 True,可以使 TextBox 在运行时接受或显示多 行文本。只要没有水平方向“ScrollBar”,多行 TextBox 中的文本会自动按字 换行。ScrollBars 属性的缺省值被设置为 0(None)。自动按字换行省去用户在 行尾插入换行符的麻烦。当一行文本已超过所能显示的长度时,TextBox 自动将 文本折回到下一行显示。在设计时,不能在“属性”窗口输入换行符。在过程中, 可以通过插入一个回车加上换行符(ANSI 字符 13 和 0)来产生一个行断点。 注意:如果将 MultiLine 属性设为 False,则文本框的宽度就无法改变了,这个 宽度由字体的大小决定。
2.创建密码文本框
密码框是一个文本框的特殊且常用的形式,它允许在用户输入密码的同时显示星 号之类的占位符。vb.net 2005 提供 PasswordChar 和 MaxLengh 这两个文本框属 性,大大简化了密码文本框的创建。PasswordChar 指定显示在文本框中的字符。 例如:若希望在密码框中显示星号,则可在“属性”窗口中将 PasswordChar 属 性指定为“*”。
则在运行的时候,无论用户在文本框中输入什么字符,文本框中都显示星号。可 用 MaxLength 设定输入文本框的字符数。输入的字符数超过 MaxLength 后,系统 不接受多出的字符并发出嘟嘟声。
3.创建只读文本框
可用 Readonly 属性防止用户编辑文本框内容。将 Readonly 属性设置为 True 后, 用户就可以滚动文本框中的文本并将其突出显示,但不能作任何更改。将 Readonly 属性设置为后,运行时可以在文本框中使用“复制”命令,但不能使 用“剪切”和“粘帖”命令。Readonly 属性只影响运行时的用户交互。这时仍 可变更 Text 属性,从而在运行时通过程序改变文本框的内容。 4.显示字符串中的引号
引号(“”)有时出现在文本的字符串中。
例如:She said,“You deserve a treat!“因为赋予变量或属性的字符串都用引 号(””)括起来,所以对于字符串中要显示的一对引号,必须再插入一对附加的 引号。Visual Basic 将并列的两对引号解释为嵌入的引号。 例如,要显示上面的字符串就应使用以下代码:
TextBox1.Text="She said,""You deserve a treat!"" "
可用引号的 ASCII字符(34)达到相同的效果:
TextBox1.Text="She said,"&Chr(34)+"You deserve a treat!"&Chr(34)
vb.net 的 MainMenu 控件
MainMenu(主菜单)控件是 vb.net 用来取代 Visual Basic 以前版本的“菜单编辑 器”。MainMenu 控件较“菜单编辑器”有很大优势,因为以控件的“身份”, 更有利于应用程序对整个菜单的操作,而且,可以实现不同窗体的多次利用,而 不必每个窗体都要重新设计菜单。MainMenu 控件在工具箱中的图标如图所示:
1.在设计时添加 MainMenu 控件
添加 MainMenu 控件与添加其他控件的方法一样(双击或拖动),但是 MainMenu 控件本身并不存在于窗体之上,而是在窗体下方的“组件栏”中。在这里的控件都不出现在窗体中,但它(们)的方法、过程、属性都影响着窗体 及其上的其他控件,类似的控件还有 Timer 控件、HelpProvide(帮助提供)控件 等。
2.制作菜单
单击“组件栏”中的 MainMenu 控件,则在窗体的左上方出现”Type Here”字样, 单击”Type Here”,更改菜单的标题,如下图所示:
右键单击任意一顶子菜单,在弹出的菜单中选择“Edit Names”(更改名称), 如下图所示:
再次单击子菜单时,就可以更改菜单的名称了。第三次点击“Edit Names”则恢 复正常的菜单编辑状态。
3.菜单的 Click 事件
菜单最常用的事件就是 Click 事件,一般来说,菜单的 Click 事件总是和工具栏 中按钮的 Click 事件对应。
vb.net 的 Checkbox 控件
CheckBox(复选框)控件用来标识某个选项是否为选定的状态。因此通常用此控件 提供“Yes/No”或“True/False”选项。可用分组的 CheckBox 控件显示多组不 同类型的选项,用户可从中一个组选择一个或多个选项。CheckBox 控件在工具
箱中的图标如图所示:
CheckBox 控件与 RadioBox(单选框)控件都可以用来指示用户是否对某个选项作 出选择。不同之处在于,对于一个组内 RadioBox 控件,一次只能选择其中的一 个,而对于所有的 CheckBox 控件,则可选定任意数目的复选框。RadioBox 控件 将在后面进一步介绍。
1.CheckState 属性
CheckBox 控件的 CheckState 属性指示复选框处于选定、未选定或禁止状态(暗 淡的)中的哪一种。选定时,CheckState 设置值为 1。
用户单击 CheckBox 控件指定选定或未选定状态,然后可检测控件状态并根据此 信息编写应用程序以执行某些操作。缺省时,CheckBox 控件设置为 CheckState.Unchecked。若要预先在一列复选框中选定若干复选框,则应在 New 或 InitializeComponent 过程中将 CheckState 属性设置为 CheckState.Checked 以选中复选框;可将 CheckState 属性设置为 CheckState.Indeterminate 以禁用 复选框。例如,有时可能希望满足某条件之前禁用复选框。
2.Click 事件
无论何时单击 CheckBox 控件都将触发 Click 事件,然后编写应用程序,根据复 选框的状态执行某些操作。在下例中,每次单击 CheckBox 控件时都将改变其 Text 属性以指示选定或未选定状态:
Protected Sub CheckBox1_Click(ByVal sender As Object,ByVal As_ System.EventArgs)Handles CheckBox.Click
If CheckBox1.CheckState=CheckState.Checked Then CheckBox1.Text="Checked"
ElseIf CheckBox1.CheckState=CheckState.UnChecked Then CheckBox1.Text="UnChecked"
End If
注意:如果试图双击 CheckBox 控件,则将双击当作两次单击,而且分别处理两 次单击,即:CheckBox 控件不支持双击事件。
3.响应鼠标和键盘
在键盘上使用 Tab 键并按 SpaceBar 键,由此将焦点转移到 CheckBox 控件上,这 时也会触发 CheckBox 控件的 Click 事件。可以在 Text 属性的一个字母之前添加 连字符,创建一个键盘快捷方式来切换 CheckBox 控件的选择。
4.增强 CheckBox 控件的视觉效果
CheckBox 控件象 Button 和 RadioButton 控件一样,可通过更改 Style 属性的设 置值后使用 Image、ImageAlign、ImageIndex 和 ImageList 属性增强其视觉效果。
例如:有时可能希望在复选框中添加图标或位图,或者在单击或禁止控件时显示 不同的图象等。
vb.net 的 Radiobutton 控件
RadioButton(选项按钮)控件和 CheckBox(复选框)一样,也是被用来标识某个选 项是否为选定的状态(相当于 Visual Basic 以前版本的 OptionButton 控件)。 通常以一组选项按钮的形式出现,但用户在一个组中只能选择一个选项。也就是 说,当用户选定一个选项按钮时,同组中的其他选项按钮会自动失效。
RadioButton 控件在工具箱中的图标如图所示:
1.创建一组选项按钮
选项按钮一般是以组的形式存在的,一般来说,绘制在相同容器控件的同一类 RadioButton 就完成以组的形式存在了,象 GroupBox 控件、PictureBox 控件或 窗体都可以作为 RadioButton 组的容器。运行时,用户在每个选项组中只能选定 一个选项按钮。例如,如果把选项按钮分别添加到窗体和窗体上的一个 GroupBox 控件中,则相当于创建两组不同的选项按钮。所有直接添加到窗体的选项按钮成 为一组选项按钮。要添加附加按钮组,应把按钮放置在框架或图片框,然后在内 部绘制 RadioBox 控件。设计时,可选择 GroupBox 控件或 PictureBox 控件中的 选项按钮,并把它们作为一个单元来移动。要选定 GroupBox 控件、PictureBox 控件或窗体中所包含的多个控件时,可在按住 Ctrl 键的同时用鼠标在这些控件 周围绘制一个方框。
2.运行时选择选项按钮
在运行时有若干种选定选项按钮的方法:用鼠标单击某个选项按钮,使用 Tab 键将焦点转移到控件,使用 Tab 键将焦点转移到一组选项按钮后再用方向键从组 中选定一个按钮,在选项按钮的标题上创建快捷键,或者在代码中将选项按钮的 Checked 属性设置为 True.
3.Click 事件
选定选项按钮时将触发其 Click 事件。是否有必要响应此事件,这将取决于应用 程序的功能。例如,当希望通过更新 Label 控件的标题向用户提供有关选定项目 的信息时,对此事件作出响应是很有益的。
4.Checked 属性
选项按钮的 Checked 属性指出是否选定了此按钮。选定时,数值将变为 True。 可通过在代码中设置选项按钮的 Checked 属性来选定按钮。例如: RadioButton1.Checked=True,要在选项按钮组中设置缺省选项按钮,可在设计 时通过“属性”窗口设置 Checked 属性,也可在运行时在代码中用上述语句来设 置 Checked 属性。 在向用户显示包含选项按钮的对话框时将要求他们选择项目,确定应用程序下一 步做什么。
可用每个 RadioButton 控件的 Checked 属性判断用户选定的选项并作出相应的响 应。
5.禁止选项按钮
要禁止选项按钮,应将其 Enabled 属性设置成 False。运行时将显示暗淡的选项 按钮,这意味着按钮无效。
vb.net 的 GroupBox 控件
GroupBox(控件组)控件一般是作为其他控件的组的容器的形式存在的,这样有利 于用户识别,使界面变得更加友好(GroupBox 控件相当于 Visual Basic 以前版 本的 Frame 控件)。使用控件组控件可以将一个窗体中的各种功能进一步进行分 类,例如,将各种选项按钮控件分隔开。在大多数情况下,对控件组控件没有实 际的操作。我们用它对控件进行分组,通常没有必要响应它的事件。不过,它的 Name、Text 和 Font 等属性可能会经常被修改,以适应应用程序在不同阶段的要
求。GroupBox 控件在工具箱中的图标如图所示:
1.在窗体中添加一个 GroupBox 控件
在使用控件组控件给其他控件分组的时候,首先绘出控件组控件,然后再绘制它 内部的其他控件,其他的控件就以这个控件组控件为容器,这样在移动控件组的 时候,可以同时移动它包含的控件。
2.在控件组内部控制控件 要将控件加入到控件组控件中,只需将它们绘制在控件组控件的内部即可。如果 将控件绘制在控件组控件之外,或者在向窗体添加控件的时候使用了双击方法, 再将它移动到控件组控件内部,那么控件也将从属于这个控件组控件。这也是 vb.net 中的 GroupBox 区别于以前版本的 Frame 的地方。 3.选择框加中的多个控件 要选择框架中的多个控件,在使用鼠标点击在控件组控件的时候需要按下 Ctrl 键,在释放鼠标的时候,位于框架之内的控件将被选定。
vb.net 的 PictureBox 控件
PictureBox(图片箱)控件被用来显示图形,可以作为其他控件的容器。 PictureBox 控件在工具箱中的图标如图所示:
1.支持的图形格式
PictureBox 控件可显示下述任何格式的图片文件:位图、图标、图元文件、增 强型图元文件、JPEG 或 GIF 文件。
2.将图形加载到 Picture 控件中
在设计时,从“属性”窗口中选定并设置 Image 属性就可将图片加载到 PictureBox 控件中,也可在运行时设置 PictureBox 控件的 Image 属性: PictureBox1.Image=Image.FromFile(“C:\Windows\Winlogo.cur”)
或 PictureBox1.Image.FromFile(“C:\Windows\Winlogo.cur”)
3.使用剪贴板
设计时也可这样向 PictureBox 控件添加图形:从其他应用程序中复制图形后把 它粘贴到 PictureBox 控件中。例如,有时可能希望添加由 WindowsPaint 创建的 位图图象。直接把图象复制到剪贴板,选定 PictureBox 控件,然后使用键盘快 捷方式 Ctrl+V 或使用“编辑”菜单的“粘贴”命令。
4.设置图片大小的属性
图片大小用 SizeMode 属性来设置。缺省时这个属性值为 Normal,加载到图片框 中的图形保持其原始尺寸,这意味着如果图形比控件大,则超过的部分将被剪裁 掉,即 PictureBox 控件不提供滚动条。要使 PictureBox 控件自动调整大小以显 示完整图形,应将 SizeMode 属性设置为 AutoSize。这样控件将自动调整大小以 适应加载的图形;将 SizeMode 属性设置为 StretchImage 时,插入的图片将 PictureBox 的大小完整填充显示在其中;将 SizeMode 属性设置为 CenterImage 时,图片显示在 PictureBox 的中央。
PictureBox 控件不能伸展图象以适应控件尺寸。
5.用 PictureBox 控件作容器
可用 PictureBox 控件作为其他控件的容器。例如,因为可将 PictureBox 控件放 置到 MDI 子窗体的内部区域,所以通常用它手工创建工具条或状态条。 6.PictureBox 控件的边框
可以通过设置 PictureBox 的 BorderStyle 属性来改变控件的外观,BorderStyle 共有三个属性值:None、FixedSingle 及 Fixed3D。
vb.net 的 ListBox 控件
ListBox(列表框)控件可以显示一组项目的列表,用户可以根据需要从中选择一 个或多个选项。列表框可以为用户提供所有选项的列表。虽然也可设置列表框为 多列列表的形式,但在缺省时列表框单列垂直显示所有的选项,如果项目数目超 过了列表框可显示的数目,控件上将自动出现滚动条。这时用户可在列表中上、
下、左、右滚动。
1.click 和 Double-click 事件
对于列表框的事件,特别是当列表框参与触发应用程序的某一部分功能时,可以 添加一个 Button 控件,并把该按钮同列表框并用。按钮的 Click 事件过程应该 使用列表框的选项执行适于应用程序的操作。 双击列表中的项目与选定项目然后单击按钮,这两者应该具有相同的效果。为此, 应在 ListBox 控件的 Double-Click 过程中调用按钮的 click 过程:
Public Sub ListBox1_DoubleClick(ByVal sender As Object,_ ByVal e As System.EventArgs)Handles
ListBox1.DoubleClick Button1_Click(sender,e)
End Sub
这将为使用鼠标的用户提供快捷方式,同时也没有妨碍使用键盘的用户执行同样 的操作。
注意:没有与 DoubleClick 事件等价的键盘命令,因此无法通过快捷键的方式达 到 ListBox 控件的 DoubleClick 功能。
2.向列表框中添加项目
为了向列表框中添加项目,应使用 InsertItem 方法,其语法如下: ListboxName.InsertItem(index As integer,Item AS Object)
或
ListboxName.Items.Insert(index As Integer,Item As Object)
其中 ListboxName 列表框的名称“item”添加到列表中的字符串表达式。若 “item”是文字常数,则用括号将它括起来:“index”指定在列表中插入新项 目的位置。“index”为 0 表示第一个位置。如果在列表框的第一个位置添加项 目也可以用:
ListboxName.Items.Add(Item As Object)
通常在窗体设计时或 New 过程或 InitializeComponent(该过程存在于 Windows Form Designer generated code)中添加列表项目,但也可在任何时候使用 InsertItem 方法添加项目,于是可动态(响应用户的操作)添加项目。下列代 码将“Germany”、“India”、“France”和“USA”添加到名为 ListBox1 的列 表框中:
Public Sub New() MyBase.New
Form1=Me
'This call is required by the Win Form Designer IntializeComponent
ListBox1.InsertItem(0,"Germany")
ListBox1.InsertItem(1,"India")
ListBox1.InsertItem(2,"France")
ListBox1.InsertItem(3,"USA")
'TODO:Add any initialization after the InitializeComponent() call
End Sub
注意:“InitializeComponent”中的代码是在每次窗体设计后自动生成的,因 此尽量一次设计好窗体,因为如果重复设计窗体,以前所添加的代码将被覆盖掉, 所以可以把向 ListBox 中添加代码编成一个过程,”‘AddItem() ‘过程”,在 “New()”或”InitializeComponent()”调用这个过程,如下:
Public Sub New() MyBase.New
Form1=Me
'This call is required by the Win Form Designer Intializecomponent
Call AddItem(0
'TODO:Add any initialization after the InitializeComponent() Call
End Sub
Private Sub AddItem() ListBox1.InsertItem(0,"Germany") ListBox1.InsertItem(1,"India") ListBox1.InsertItem(2,"France") ListBox1.InsertItem(3,"USA")
End Sub
3.设计时添加项目
通过设置 ListBox 控件属性窗口的 Items 属性还可在设计时向列表添加项目,在 选定了 Items 属性选项并单击 时,弹出“字符串集合编辑器”可输入列表项目 并按 Enter 键换行。只能在列表末端添加项目。所以,如果要将列表按字母顺序 排序,则应将 Sorted 属性设置成 true.
4.排序列表
可以指定要按字母顺序添加到列表中的项目,为此将 Sorted 属性设置为 true 并省略索引。排序时不区分大小写;因此单词“japan”和“JAPAN”将被同等对 待。Sorted 属性设置为 true 后,InsertItem 方法可能会导致不可预料的非排序 结果。
5.从列表中删除项目
从列表中删除项目可用下面的语法:
ListboxName.Items.Remove(Index As Integer) “Remove”有一参数“index”,它指定删除的项目;它有一个重载函数: ListboxName.Items.Remove(value As Object) 以适应不同参数输入的需要。要删除列表框中的所有项目,应使用 Clear 方法: Listbox1.Items.Clear()。
6.通过 Text 属性获取列表内容
通常,获取当前选定项目值的最简单方法是使用 Text 属性。Text 属性总是对应 用户在运行时选定的列表项目。例如,下列代码在用户从列表框中选定 Canada 时显示有关加拿大人口的信息:
Public Sub Listbox1_DoubleClick(ByVal sender As object,Byval e As System.EventArgs)
If Listbox1.Text="Canada" Then Textbox1.Text="Canada has 24 million people."
End If End Sub
Text 属性包含当前在 Listbox1 列表框中选定的项目。代码检查是否选定了 “Canada”,若已选定,则在 Text 框中显示信息。
7.用 Items 属性访问列表项目
可用 Items 属性访问列表的全部项目。此属性包含一个数组,列表的每个项目都 是数组的元素。每个项目以字符串形式表示。引用列表的项目时应使用如下语法: ListboxName.Items(index) “ListboxName”参数是列表框的名称,“index”是项目的位置。顶端项目的索引为 0,接下来的项目索引为 1,依次类推。例如,下列语句在一个文本框中显示 列表的第三个项目(index=2):
Textbox1.Text=Ctr(Listbox1.Items(2))。
8.用 SelectedIndex 属性判断位置
如果要了解列表中已选定项目的位置,则用 SelectedIndex 属性。此属性只在运 行时可用,它设置或返回控件中当前选定项目的索引。设置列表框的 SelectedIndex 属性也将触发控件的 click 事件。 如果选定第一个(项端)项目,则属性的值为 0,如果选定下一个项目,则属性 的值为 1,依此类推。若未选定项目,则 SelectedIndex 值为-1。
9.使用 Count 属性返回项目数
为了返回列表框中的项目的数目,应使用 Count 属性。例如,下列语句用 Count 属性判断列表框中的项目数:
Textbox1.Text=“You have”&Listbox1.Items.Count&”_entries listed”
vb.net 的 CheckedListBox 控件
CheckedListBox(复选列表框)控件可以说是 ListBox 控件的派生控件,因此继承 了 ListBox 控件的很多方法和属性,CheckedListBox 控件在工具箱中的图标如
图所示:
1.CheckedListBox 的 Double_Click 事件
与列表框相似,复选列表框作为对话框的一部分出现时,建议添加一个按钮,并 把该按钮同列表框并用。按钮的 Click 事件过程应该使用列表框的选项执行适于 应用程序的操作。 双击列表中的项目与先选定项目然后单击按钮,这两者具有相同的效果。为此, 应在 ListBox 控件的 DoubleClick 过程中调用按钮的 Click 过程:
Public Sub ListBox1_DoubleClick(ByVal sender As Object,_ ByVal e As System.EventArgs)Handles
ListBox1.DoubleClick Button1_Click(sender,e)
End Sub
改为:
Public Sub CheckedListBox1_DoubleClick(ByVal sender As Object,_
ByVal e As System.EventArgs)Handles ListBox1.DoubleClick
Button1_Click(sender,e) End Sub
2.设计时添加项目
通过设置 CheckedListBox 控件属性窗口的 Items 属性还可在设计时向列表添加 项目。在选定了 Items 属性选项并单击 时,弹出“字符串集合编辑器”,可输
入列表项目并按 Enter 换行。只能在列表末端添加项目。所以,如果要将列表按 字母顺序排序,则应将 Sorted 属性设置成 true。
3.运行时对项目的操作
有两种方法向复选列表框中添加项目
●CheckedListBoxName.Items.Add(item as Object,IsChecked as Boolean) ●CheckedListBoxName.InsertItem(index as integer,item as Object) 第一种方法可以向复选列表框添加一个标识选定与否的项目,第二种方法可以在 指定的位置添加项目。例如向复选列表框中添加如下两个项目: CheckedListBox1.Items.Add(“dd”,True) CheckedListBox1.InsertItem(2,“kk”)
设置项目的 Checked 属性可以用以下语句: CheckedListBox.SetItemChecked(index as integer,value as Boolean) 可将”kk”项目的 Checked 属性设置为 True: CheckedListBox1.SetItemChecked(2,True) ‘假定”kk”项目的 index 属性为 2
vb.net 的 Combobox 控件
Combobox(组合框)控件相当于将文本框和列表框的功能结合在一起。这个控件可 以实现输入文本来选定项目,也可以实现从列表中选定项目这两种选择项目的方 法。如果项目数超过了组合框能够显示的项目数,控件上将自动出现滚动条。用 户可以上下或左右滚动列表。
1.使用组合框和列表框
通常,组合框适用于建议性的选项列表,而当希望将输入限制在列表之内时,应 使用列表框。组合框包含编辑区域,因此可将不在列表中的选项输入列区域中。 此外,组合框节省了窗体的空间。只有单击组合框的向下箭头时(Style 属性值 为 1 的组合框除外,它总是处于下拉状态)才显示全部列表,所以无法容纳列表 框的地方可以很容易地容纳组合框。
2.组合框的样式
此处有三种组合框样式。每种样式都可在设计时或运行时来设置,而且每种样式 都使用数值或相应的 Visual Basic 常数来设置组合框的样式。 样式值常数:下拉式组合框值为 0,Vb.net 中的常数值为 DropDown;简单组合框 值为 1,Vb.net 中的常数值为 Simple;下拉式列表框值为 2,vb.net 中的常数 值为 DropDownList。
3.下拉式组合框
在缺省设置(Style=0)下,组合框为下拉式。用户可象在文本框中一样直接输 入文本,也可单击组合框右侧的附带箭头打开选项列表。选定某个选项后,将此 选项插入到组合框顶端的文本部分中。当控件获得焦点时,也可按 Alt+↓键打 开列表
4.简单组合框
将组合框的 Style 属性设置为 1,将指定一个简单的组合框,任何时候都在其内 显示列表。为显示列表中所有项,必须将列表框绘制得足够大。当选项数超过可
显示的限度时将自动插入一个垂直滚动条。用户可直接输入文本,也可从列表中 选择。象下拉式组合框一样,简单组合框也允许用户输入那些不在列表中的选项。 5.下拉式组合框 下拉式组合框(Style=2)与正规列表框相似–它显示项目的列表,用户必须从 中选择,但下拉式列表框与列表框不同之处在于,除非单击框右侧的箭头,否则 不显示列表。 这种列表框与下拉式组合框的主要差别在于,用户不能在列表框中输入选项,而 只能在列表中选择。当窗体上的空间较少时,可使用这种类型的列表框。 6.添加项目
为在组合框中添加项目,应使用 Insert 方法,其语法如下: ComboboxName.Items.Insert(index As Integer,item As Object) “comboboxName”为列表框或组合框名称,item 为在列表中添加的字符串表达式, 用引号括起来。Index 用来指定新项目在列表中的插入位置。Index 为 0 表示第 一个位置。当在第一个位置时,也可以用语法:
combobox.Items.Add(item As Object)
通常在设计时或在 New 过程中添加列表项目,但也可在任何时候使用 Insert 方 法。这样就能动态在列表中添加项目。以下代码将“Chardonnay”,“Fum Blanc”,“Gewztraminer”和“Zinfandel”放置到名为 combobox1,Style 属性 为 0(DropDown)的组合框中:
Public Sub New() ...
...
Combobox1.Items.Insert "Chardonnay" Combobox1.Items.Insert "Fum Blanc" Combobox1.Items.Insert "Gewztraminer" Combobox1.Items.Insert "Zinfandel"
End Sub
7.设计时添加项目
在设计时,也可设置组合框控件“属性”窗口的 Items 属性,从而在列表中添加 项目。选定 Items 属性并单击 按钮后就可以输入列表项目,然后按回车键换到 新的一行。 只能将项目添加到列表的末尾。所以,如果要将列表按字母顺序排序,则应将 Sorted 属性设置为 True.
8.指定位置添加项目
为了在列表指定位置添加项目,应在新项目后指定索引值。例如,下行代码将 “Piont Noir”插入到第一个位置并把其他项目的位置向下调整: Combobox1.Items.Insert(0,“Pinot Noir”) 注意:指定列表中的第一个位置的是 0 而不是 1
9.排序列表
将 Sorted 属性设置为 True 并省略索引,则可在列表中指定按字母顺序添加的项 目。排序时不区分大小写。将 sorted 属性设置为 true 后,Items.Insert 方法 将导致不可预料的非排序结果。
10.删除项目
可在组合框中用 Items.Remove 方法来删除项目。Items.Remove 有一个参数 index, 它指定要删除的项目:combobox1.Items.Remove(index)及 index 参数和 Items.Insert 中的参数相同。例如,为了删除列表中的第一个项目,应添加下 面一行代码:
combobox1.Items.Remove(0)
若要删除所有列表项目,就使用 Clear 方法:
combobox1.Clear
11.用 Text 属性获取列表内容
获取当前选项目值的最简单的常用方法就是使用 Text 属性。在运行时无论向控 件的文本框部分输入了什么文本,Text 属性都与这个文本相对应。它可以是选 定的列表选项,或者是用户在文本框中输入的字符串。例如,如果用户选定列表 框中的“chardonnay”,则通过下列代码显示有关“chardonnay”的信息:
Private Sub Combobox1_click(Byval sender As Object,Byval e As System.EventArgs)
If Combobox1.Text="Chardonnay" Then Textbox1.Text="Chardonnay is a midium-bodied white wine."
End If End Sub
其中 Text 属性包含 Combobox1 列表框中当前选定的项目。代码查看是否选择了 “Chardonnay”,若是如此,则在文本框中显示信息。
12.用 Items 属性访问列表选项
有了 Items 属性就可访问列表中所有项目,该属性包含一个数组,而且列表中的 每个项目都是数组的元素。每一项都表示为字符串的形式。为了引用列表中的项 目,应使用如下语法:
ComboboxName.Items(index)
ComboboxName 为组合框名称,而 index 是项目的位置。顶端项目的索引为 0,下 一个项目的索引为 1,依次类推。例如,在文本框中,以下语句显示列表中的第 三个项目(index=2):
Text1.Text=CStr(Combobox1.Items(2))
13.用 SelectIndex 属性判断位置
想要知道组合框列表中选定项目位置,可以由 SelectIndex 属性得到。该属性设 置或返回控件中当前选定项目的索引值,而且只在运行时有效。对组合框的 SelectIndex 属性进行设置时也会触发控件的 Click 事件。若选定第一个(项端) 项目,则属性值为 0;选定的下一个项目属性值为 1,依次类推。如果未选定项 目,或者用户在组合框中输入选项(样式 0 或 1)而不在列表中选择现有的项目, 则 SelectIndex 为-1。
14.Items.Count 属性返回项目数
为了返回组合框中的项目数,应使用 Items.Count 属性。例如,下列语句用 Items.Count 属性判断组合框中的项目数:
TextBox1.Text=“You have”&Combobox1.“Items.Count”&”_entries listed”
vb.net 的 ListView 控件
ListView(列表查看)控件用来以图形的形式显示项目,可以用 4 种不同视图。通 过此控件,可将项目组成带有或不带有列标头的列,并显示伴随的图标和文本。 ListView 控件在工具箱中的图标如图所示:
可使用 ListView 控件将称作 ListItem 对象的列表条目组织成下列 4 种不同的视 图之一:大(标准)图标、小图标、列表、报表。
1.用 View 属性改变视图
要改变视图,可以使用 View 属性。下面的代码将 View 属性设置为报表视图,代 码中使用了内部常数 View.LargeIcon,该控件的名称为“ListView1”。 ListView1.View=View.LargeIcon
用 View 属性,可使最终用户动态地改变视图
2.InsertItem 方法
添加 ListItem 对象到 ListView 控件的 ListItems 集合中并返回新创建对象的引 用。应用于 ListItem 对象,ListItem 集合,语法为: ListViewName.InsertItem(index as integer,text as String,imageIndex as Integer,subItems() as String)
InsertItem 方法的语法包括以下部分: (1)ListViewName:必需的。对象表达式,其值是 ListItems 集合; (2)Index:必需的。指定在何处插入 ListItem 的整数。若未指定索引,则将 ListItem 添加到 ListItems 集合的末尾;
(3)Text:必需的。指定加入 ListItem 的标题;
(4)imageIndex:可选的。当 ListView 控件设为图标视图时,此整数设置从 ImageList 控件中选定欲显示的图标;
(5)SubItems():可选的。当 ListView 控件为报表视图时,用来设置列标题的数 组。
注意:设置 imageIndex 属性之前必须先初始化。有两种初始化方法:在设计时, 使用 ListView 控件属性页初始化,或在运行时,使用下列代码初始化: ListView1.LargeImageList=ImageList1 ‘假设 ImageList 为 ImageList1 ListView1.SmallImageList=ImageList2
如果列表尚未排序,则可使用 index 参数将 ListItem 对象插入到任意位置。如 果列表已排序,则将忽略 index 参数并根据排序顺序把 ListItem 对象插入到适 当的位置。
若未提供 index,则 ListItem 对象将被添加一个索引,此索引等于集合中 ListItem 对象的数目加 1。
vb.net 的 TreeView 控件
一个 TreeView(树型结构)控件是显示结点(Node)对象的等级体系结构,每个 Node 对象包含了一个标签和可选的点位图。TreeView 控件通常用于显示文档头、 索引中的条目、磁盘上的文件和目录或者可以显示为等级结构的各种其他信息。
Windows 资源管理器左侧部分就是一个典型的树结构。TreeView 控件在工具箱中 的图标如图所示:
1.TreeView 在设计时设计好结点的组织结构
要建立如下图所示的树形结构可按以下步骤进行:
(1)向窗体添加一个 TreeView 控件,名为 TreeView1 以及一个 ImageList 控件, 名为 ImageList1;
(2)在 ImageList 控件中添加位图文件,具体方法见后面的 ImageList 控件章节。 (3)将 TreeView 属性页中的“ImageList”选项设置为“ImageList1”; (4)点击 TreeView 属性页中的“Nodes”选项,则会弹出树结点编辑对话框 (5)在树结点编辑框中编辑结点的层次关系
2.在树结点编辑器中编辑结点
(1)点击“Add Root(添加根结点)”按钮,则在结点编辑框中出现了一个结点 (默认名为 NodeN),可根据树型的需要,将其他结点添加到这棵树上。 (2)选择需要添加子结点的结点,单击“Add Child(添加子结点)”按钮,则在 当前选中的结点中的结点上添加了一个子结点。 (3)选择需要添加位图的结点,然后在“Image”(图标)、“Selected Image“(选 择图标)中,在 ImageList1 中选择需要的位图即可。 (4)点击“OK(确定)”按钮,在 TreeView1 中就会显示编辑的树了。 3.运行时给树添加结点
给 TreeView 添加结点用到的是“Nodes.Add”方法,首先选定要添加子结点的结 点才能应用这个方法,TreeView 中的结点的组织关系是父结点管理子结点的关 系,也就是说,子结点组成的集合就是父结点的“Nodes”属性,子结点的 “Index”属性,是根据其在子结点集合中的位置而决定的,而不是整棵树中结 点的位置。根据这个特点,若想找到指定结点须按以下的语法: TreeViewName.Nodes.Item(Index1).Nodes.Item(Index2)… 而添加结点的方法为: TreeViewName.Nodes.Item(Index1).Nodes.Item(Index2)…Add(“NodeText”) 或 TreeViewName.Nodes.Item(Index1).Nodes.Item(Index2)…Add(“objNode”) 例如在上面 TreeView1 的 node2 结点中添加子结点“node2child1”,再给结点 node2child1 添加子结点“node2child1child1”,可以写成如下代码:
Protected Sub Button1_Click(Byval sender As Object,ByVal e As system.Eventargs)
Dim nodx As New TreeNode()
nodx.Text="node2child1" nodx.ImageIndex=2 TreeView1.Nodes.Item(2).Nodes.Add(nodx)
TreeView1.Nodes.Item(2).Nodes.Item(0).Nodes.Add("node2child1child1") End Sub
vb.net 的 ImageList 控件
ImageList(图片列表)控件,主要就是为了给其他控件提供位图的支持,它仅仅 是个图标的承载工具,本身并不参与界面的设计,ImageList 控件在工具箱中的 图标如图所示:
向 ImageList 中添加位图文件:
点击 ImageList 属性页中的“Images”选项右侧的 ,则会弹出如下图所示的 图片编辑对话框,添加图片即可。
vb.net 的 Timer 控件
Timer(定时器)控件是用来产生一定的时间间隔。在每个时间间隔中都可根据应 用程序的要求有相同或不同的事件或过程发生,Timer 控件在工具箱中的图标如
图所示:
1.设置 Interval、Enabled 属性
Interval 属性是 Timer 控件最重要的属性之一,它决定着事件或过程发生的时 间间隔,Interval 属性以千分之一秒为基本单位,就是事件发生的最短间隔是 一毫秒,但是这样的时间间隔对系统的要求很高,因此按时间精度的要求适当设 置这个属性也是工程运行速度和可靠性的一种保证。
Enabled 属性可以设置 timer 控件是否为激活状态,一旦这个属性为 False,那 么 timer 控件将失去作用。反之,如果在某个条件下将这个属性设置为 true, timer 控件将会被激活,事件和过程将间隔发生。
2.timer 的 Tick 事件
使用 Tick 事件时,可用此事件在每次 timer 控件时间间隔过去之后通知 Visual Basic 应该做什么:Interval 属性指定 Tick 事件之间的间隔。无论何时,只要 timer 控件的 Enabled 属性被设置为 true,而且 Interval 属性大于 0,则 Tick 事件以 Interval 属性指定的时间间隔发生。如下例将实现标题栏滚动的效果。 其中 Button1、Button2 为按钮,它们的 Text 属性分别为“Go Now”和“Stop Here”;Label1 为一个标签,Text 属性为“Welcome to Vb.net”;Timer1 为 一个定时器控件,如下图所示:
添加如下代码:
Protected Sub Timer1_Tick(ByVal sender As Object,ByVal e As System.EventArgs)
Label1.Left+=40
Label1.Left=Label1.Left MOd Me.Width End Sub
Protected Sub Button2_Click(Byval sender As Object,Byval As System.EventArgs)
timer1.Enabled=False End Sub
Protected Sub Button1_Click(Byval sender As Object,Byval e As System.EventArgs)
timer1.Interval=100
timer1.Enabled=True
End Sub
添加代码后,运行该工程,点击“Go Now”按钮,即可看到标题栏在滚动,点击 “Stop Here”按钮,则标题栏停止滚动。
vb.net 的 HScrollBar 和 VScrollBar 控件
有了 HScrollBar(水平滚动条,如图 )和 VScrollBar(垂直滚动条,
如图 ),就可在应用程序的窗体或控件容器中水平或垂直滚动,相当 方便地巡视一长列项目或大量信息。
水平、垂直滚动条控件不同于 Windows 中内部的滚动条或 Visual Basic 中那些 附加在文本框、列表框、组合框或 MDI 窗体上的滚动条。无论何时,只要应用程 序或控件所包含的信息超过当前窗口(或者设置了 ScrollBars 属性的 TrueBox 控件)所能显示的信息,那些滚动条就会自动出现。在较早的 Visual Basic 版 本中,通常把滚动条作为输入设备。但目前的 Windows 界面指南则建议用滑块取 代滚动条作为输入设备。滚动条在 Visual Basic 中仍然不价值,因为它为那些 不能支持自动支持滚动的应用程序和控件提供了滚动的功能。
1.ScrollBar 控件如何工作
滚动条控件用“Scroll”和“ValueChanged”事件监视滚动框沿滚动条的滚动。 “ValueChanged”在滚动框移动之后发生;“Scroll”在 ValueChange 发生后释 放鼠标时发生。在单击滚动箭头或滚动条时,也是先发生 ValueChange 事件,再 发生 Scroll 事件。下面的代码中,Scroll 事件将当前窗体的标题设置为 Value 值,ValueChange 事件将当前窗体的标题设置为两倍的 Value 值:
Public Sub HScrollBar1_Scroll(Byval sender As Object,_
Byval As System.WinForms.ScrollEventArgs)Handles HScrollBar1.Scroll
Me.Text=CStr(hscrollbar1.Value) End Sub
Public Sub HScrollBar1_ValueChanged(Byval sender As Object,_
Byval As System.EventArgs)Handles HScrollBar1.ValueChanged
Me.Text=CStr(hscrollbar1.Value*2)
End Sub
2.Value 属性
Value 属性(缺省值为 0)是一个整数,它对应于滚动框在滚动条中的位置。当 滚动框位置在最小值时,它将移动到滚动条的最左端位置(水平滚动条)或顶端 位置(垂直滚动条)。当滚动框在最大值时,它将移动到滚动条的最右端或底端 位置。同样,滚动框取中间数值时将位于滚动条的中间位置。除了可用鼠标单击 改变滚动条数值外,也可将滚动框沿滚动条拖动到任意位置。结果取决于滚动框 的位置,但总是在用户所设置的“Minimum”和“Maximum”之间。 3.LargeChange 和 SmallChange 属性 为了指定滚动条中的移动量,对于单击滚动条的情况可用 LargeChange 属性,对 于单击滚动条两端箭头的情况可用 SmallChange 属性。滚动条的 Value 属性增加 或减少的长度是由 LargeChange 和 SmallChange 属性设置的数值。要设置滚动框 在运行时的位置,可将 Value 属性设为 Minimum 到 Maximum 中的某个数值。
progressbar控件
ProgressBar(进度条)控件,是个水平放置的指示器,直观地显示某个操作正进 行了多少时间。进度条并不显示计算机执行某项特定任务要花多少分钟或秒钟, 它提供的是直观的视觉反馈,使用户确信没有理由中止操作或关掉计算机。进度 条能减轻与等待复杂的运算结果有关的紧张和不安,提供了测量某项计算任务进 度的切实措施。
1.Value、Maximum 和 Minimum 属性
Value 属性决定该控件被填充多少,其 Maximum 和 Minimum 属性设置该控件的界 限。要进行需要几秒钟的时间才能完成的操作时,就要使用 ProgressBar 控件。 同时还必须知道该过程到达已知端点需要持续多长时间,并将其作为该控件的 Maximum 属性来设置。
要显示某个操作的进展情况,Value 属性将持续增长,直到达到了由 Maximum 属 性定义的最大值。这样该控件显示的填充块的数目总是 Value 属性与 Maximum 和 Minimum 属性之间的比值。
例如,如果 Mimimum 属性被设置为 1,Maximum 属性被设置为 100,Value 属性为 50,那么该控件将显示百分之五十的填充块。
2.将 Maximum 属性设置为已知的界限
要对 ProgressBar 进行编程,则必须首先确定 Value 属性攀升的界限。例如,如 果正在下载文件,并且应用程序能够确定该文件有多少字节,那么可将 Maximum 属性设置为这个数。在该文件下载过程中,应用程序还必须能够确定该文件已经 下载了多少字节,并将 Value 属性设置为这个数。
vb.net 的 ToolBar 控件
ToolBar(工具栏)控件包含用来创建工具栏的 ToolBarButton 对象的集合。工具 栏可与应用程序相关联。ToolBar 在工具箱中的图标如图所示:
一般情况下,工具栏中的按钮与应用程序菜单中的菜单项相对应,可以用它们来 访问应用程序最常用的功能和命令。要创建工具栏,必须先将 Button 对象加入 Buttons 集合,每个 Button 对象可以拥有可选的文本,或者(并且)拥有相关 联的 ImageList 控件提供的图象。可以用 Text 属性为每个 Button 对象设置文本, 用 ImageIndex 属性设置图象。在设计时,可通过 ToolBar 的 Buttons 对话框加 入 Button。
在运行时,可以用 Add 和 Remove 方法将按钮加入 Buttons 集合或从中删除。要 在设计时添加其他控件,只需在工具栏上将所需要的控件拖入工具栏即可。 1.Buttons 集合
ToolBar 控件由 Buttons 集合中的一个或多个 ToolBarButton 对象构成。在设计 时和运行时均可创建 Button 对象。每个按钮可有图象、标题、工具提示,并且 可以同时具有上述三种特性,下图为一个工具栏的实例:
每个按钮对象还有 Style 属性,该属性决定了按钮的行为。 2.在运行时创建按钮
在运行时创建 ToolBarButton 对象的集合按以下的步骤:
(1)声明 ToolBarButton 类型的对象变量。在添加 ToolBarButton 对象时,该变 量用来包含对新产生对象的引用。该引用可以用来设置新 ToolBarButton 对象的 各种属性。
(2)用带 Add 方法的 Set 语句,将对象变量赋值为新 ToolBarButton 对象。 (3)用该对象变量设置新 ToolBarButton 对象的属性
下面的代码在 Button 对象的 Click 事件中创建一个 ToolBarButton 对象,然后 设置新的 ToolBarButton 对象的 ImageIndex,Text,ToolTipText 和 Style 属性。
Protected Sub Button1_Click(ByVal sender As Object,ByVal e As System.EventArgs)
Dim MyButton As New ToolBarButton() ToolBar1.Buttons.Add(MyButton) MyButton.ImageIndex=1
MyButton.Text="left" MyButton.ToolTipText="left1" MyButton.Style=ToolBarButtonStyle.PushButton
End Sub
vb.net 的 StatusBar 控件
要点
StatusStrip 和 ToolStripStatusLabel 控件可替换 StatusBar 和 StatusBarPanel 控件并新增了功能;但仍保留了 StatusBar 和 StatusBarPanel 控件以满足向后兼容和将来使用(如果您愿意的话)。
Windows 窗体 StatusBar 控件(Windows 窗体)是作为一个区域用在窗体上的, 通常显示在窗口的底部,应用程序可以在那里显示各种状态信息。StatusBar 控 件可以有状态栏面板,面板上显示指示状态的文本或图标,或者显示指示一个进 程正在工作的一系列动画图标;例如,Microsoft Word 指示正在保存文档。
使用 StatusBar 控件
在鼠标滚动到超链接时,Internet Explorer 使用状态栏指示某个页面的 URL; Microsoft Word 为您提供有关页位置、节位置和编辑模式(如改写和修订跟踪) 的信息;Visual Studio 使用状态栏提供区分上下文的信息,如告诉您如何操纵 可停靠的窗口,使其停靠或浮动。
通过将 ShowPanels 属性设置为 false(默认值)并将状态栏的 Text 属性设置为 希望出现在状态栏中的文本,可在状态栏中显示一条消息。您可以将状态栏分成 多个面板来显示多种类型的信息,方法是将 ShowPanels 属性设置为 true 并使用 StatusBarPanelCollection 的 Add 方法。
ToolStrip 控件
ToolStrip 控件概述(Windows 窗体)
使用 ToolStrip 及其关联的类,可以创建具有 Microsoft Windows XP、 Microsoft Office、Microsoft Internet Explorer 或自定义的外观和行为的工 具栏及其他用户界面元素。这些元素支持溢出及运行时项重新排序。ToolStrip 控件提供丰富的设计时体验,包括就地激活和编辑、自定义布局、漂浮(即工具 栏共享水平或垂直空间的能力)。
尽管 ToolStrip 替换了早期版本的控件并添加了功能,但是仍可以在需要时选 择保留 ToolBar 以备向后兼容和将来使用。
ToolStrip 控件的功能
使用 ToolStrip 控件可以:
创建易于自定义的常用工具栏,让这些工具栏支持高级用户界面和布局功 能,如停靠、漂浮、带文本和图像的按钮、下拉按钮和控件、“溢出”按 钮和 ToolStrip 项的运行时重新排序。
支持操作系统的典型外观和行为。
对所有容器和包含的项进行事件的一致性处理,处理方式与其他控件的事
件相同。
将项从一个 ToolStrip 拖到另一个 ToolStrip 内。
使用 ToolStripDropDown 中的高级布局创建下拉控件及用户界面类型编
辑器。
通过使用 ToolStripControlHost 类来使用 ToolStrip 中的其他控件,并为它 们获取 ToolStrip 功能。
通过使用 ToolStripRenderer、ToolStripProfessionalRenderer 和 ToolStripManager 以及 ToolStripRenderMode 枚举和 ToolStripManagerRenderMode 枚举,可以扩展此功能并修改外观和行为。
ToolStrip 控件为高度可配置的、可扩展的控件,它提供了许多属性、方法和事 件,可用来自定义外观和行为。以下为一些值得注意的成员:
Dock:AllowItemReorder
LayoutStyle:Overflow
IsDropDown:OverflowButton
Renderer:RenderMode
Renderer:Changed
说明
获取或设置 ToolStrip 停靠在父容器的哪一边缘。
获取或设置一个值,让该值指示拖放和项重新排序是否专门 由 ToolStrip 类进行处理。
获取或设置一个值,让该值指示 ToolStrip 如何对其项进 行布局。
获取或设置是将 ToolStripItem 附加到 ToolStrip,附加 到 ToolStripOverflowButton,还是让它在这两者之间浮 动。
获取一个值,该值指示单击 ToolStripItem 时, ToolStripItem 是否显示下拉列表中的其他项。
获取 ToolStripItem,它是启用了溢出的 ToolStrip 的 “溢出”按钮。
获取或设置一个 ToolStripRenderer,用于自定义 ToolStrip 的外观和行为(外观)。
获取或设置要应用于 ToolStrip 的绘制样式。 当 Renderer 属性更改时引发。
通过使用多个伴随类可以实现 ToolStrip 控件的灵活性。以下为一些最值得注 意的伴随类:
MenuStrip:StatusStrip
ContextMenuStrip:ToolStripItem
ToolStripContainer:ToolStripRenderer
ToolStripProfessionalRenderer:ToolStripManager
ToolStripManagerRenderMode:ToolStripRenderMode
ToolStripControlHost:ToolStripItemPlacement
说明
替换 MainMenu 类并添加功能。 替换 StatusBar 类并添加功能。 替换 ContextMenu 类并添加功能。
抽象基类,它管理 ToolStrip、 ToolStripControlHost 或 ToolStripDropDown 可以包含的所有元素的 事件和布局。
提供一个容器,在该容器中窗体的每一侧均 带有一个面板,面板中的控件可以按多种方 式排列。
处理 ToolStrip 对象的绘制功能。
提供 Microsoft Office 样式的外观。
控制 ToolStrip 呈现和漂浮,并控制 MenuStrip 对象、ToolStripDropDownMenu 对象和 ToolStripMenuItem 对象的合并。
指定应用于窗体中的多个 ToolStrip 对象 的绘制样式(自定义、Windows XP 或 Microsoft Office Professional)。
指定应用于窗体中的一个 ToolStrip 对象 的绘制样式(自定义、Windows XP 或 Microsoft Office Professional)。
承载不是明确的 ToolStrip 控件、但您需要 为其提供 ToolStrip 功能的其他控件。
指定是在主 ToolStrip 中对 ToolStripItem 进行布局,是在溢出 ToolStrip 中对它进行布局,还是都不进行 布局。
有关更多信息,请参见 ToolStrip 技术摘要和 ToolStrip 控件结构。 原文地址:msdn2.microsoft.com/zh-cn/library/e58c44b8(VS.80).aspx
Vs 2005 的 StatusStrip 控件
微软 msdn 微软 msdn
.NET Framework 类库 StatusStrip 类 注意:此类在 .NET Framework 2.0 版 中是新增的。
表示 Windows 状态栏控件。
命名空间:System.Windows.Forms
程序集:System.Windows.Forms(在 system.windows.forms.dll 中)
语法
Visual Basic(声明) <ComVisibleAttribute(True)> _ <ClassInterfaceAttribute(ClassInterfaceType.AutoDispatch)> _ Public Class StatusStrip
Inherits ToolStrip
Visual Basic(用法) Dim instance As StatusStrip
备注 虽然 StatusStrip 对以前版本的 StatusBar 控件进行替换和扩展,但是 考虑到向后兼容性和将来的使用(如果您选择),仍然保留了 StatusBar。
Vs 2005 的 MenuStrip 控件
MenuStrip 控件概述(Windows 窗体) 菜单通过存放按照一般主题分组的命令将功能公开给用户。
MenuStrip 控件是此版本的 Visual Studio 和 .NET Framework 中的新功能。 使用该控件,可以轻松创建 Microsoft Office 中那样的菜单。
MenuStrip 控件支持多文档界面 (MDI) 和菜单合并、工具提示和溢出。您可以 通过添加访问键、快捷键、选中标记、图像和分隔条,来增强菜单的可用性和可 读性。
MenuStrip 控件取代了 MainMenu 控件并向其中添加了功能;但是也可选择保留 MainMenu 控件以备向后兼容和将来使用。
MenuStrip 控件的使用方式 使用 MenuStrip 控件可以:
创建支持高级用户界面和布局功能的易自定义的常用菜单,例如文本和图 像排序和对齐、拖放操作、MDI、溢出和访问菜单命令的其他模式。
支持操作系统的典型外观和行为。
对所有容器和包含的项进行事件的一致性处理,处理方式与其他控件的事
件相同。
下表显示了 MenuStrip 和关联类的一些特别重要的属性。
System.Windows.Forms.ToolStripItem.MergeAction
System.Windows.Forms.ToolStripItem.MergeIndex
System.Windows.Forms.Form.IsMdiContainer
ShowItemToolTips
CanOverflow
ShortcutKeys
ShowShortcutKeys
下表显示了重要的 MenuStrip 同伴类。
MdiWindowListItem
说明
获取或设置用于显示 MDI 子窗体列表的 ToolStripMenuItem。
获取或设置 MDI 应用程 序中子菜单与父菜单合 并的方式。
获取或设置 MDI 应用程 序的菜单中合并项的位 置。
获取或设置一个值,该值 指示窗体是否为 MDI 子 窗体的容器。
获取或设置一个值,该值 指示是否为 MenuStrip 显示工具提示。
获取或设置一个值,该值 指示 MenuStrip 是否支 持溢出功能。
获取或设置与 ToolStripMenuItem 关 联的快捷键。
获取或设置一个值,该值 指示与 ToolStripMenuItem 关 联的快捷键是否显示在 ToolStripMenuItem 旁 边。
类 说明
ToolStripMenuItem
ContextMenuStrip
ToolStripDropDown
表示在 MenuStrip 或 ContextMenuStrip 上显示的 可选择选项。
表示快捷菜单。
表示当用户单击 ToolStripDropDownButton 或较高 级菜单项时,使用户可以从列表中选择单个项的控件。
为派生自 ToolStripItem 的控件提供基本功能,当单 击控件时显示下拉项。
ToolStripDropDownItem