我在这里学编程 索引篇 共55页[1 2 3 4 5 6 7 >»<... 最后一页]

控件内容改变事件

_Change(

指示一个控件的内容已经改变的。
此事件如何和何时发生则随控件的不同而不同:
ComboBox - 改变控件的文本框部分的正文。该事件仅在 Style 属性设置为 0(下拉 Combo)或 1(简单 Combo)和正文被改变或者通过代码改变了 Text 属性的设置时才会发生。

DirListBox - 改变所选择的目录。该事件在双击一个新的目录或通过代码改变 Path 属性的设置时发生。

DriveListBox - 改变所选择的驱动器。该事件当选择一个新的驱动器或通过代码改变 Drive 属性的设置时发生。

HScrollBar 和 VScrollBar(水平和垂直滚动条) - 移动滚动条的滚动框部分。该事件在进行滚动或通过代码改变 Value 属性的设置时发生。

Label - 改变 Label 的内容。该事件在一个 DDE 链接更新数据或通过代码改变 Caption 属性的设置时发生。

PictureBox - 改变 PictureBox 的内容。该事件当一个 DDE 链接更新数据或通过代码改变 Picture 属性的设置时发生。

TextBox - 改变文本框的内容。该事件当一个 DDE 链接更新数据、用户改变正文或通过代码改变 Text 属性的设置时发生。

语法:
Private Sub object_Change([index As Integer])
index 一个整数,用来唯一地标识一个在控件数组中控件。

说明:
Change 事件过程可协调在各控件间显示的数据或使它们同步。例如,可用一个滚动条的 Change 事件过程更新一个 TextBox 控件中滚动条的 Value 属性的设置。或者可以利用 Change 事件过程在一个工作区里显示数据和公式,在另一个区域里显示结果。

Change 事件过程在更新系统控件(DirListBox,DriveListBox 和 FileListBox)中的各属性时也是有用的。例如,可更新一个 DirListBox 控件的 Path 属性设置来反映一个 DriveListBox 控件的 Drive 属性设置的改变。

注意 一个 Change 事件过程有时会导致一个层叠事件。这种情况在控件的 Change 事件过程改变该控件的内容时会发生,例如,通过用代码设置一个决定该控件的值的属性,如对一个 TextBox 控件的 Text 属性之类的设置。为了避免层叠事件:

如果可能,应避免为控件编写能改变该控件内容的 Change 事件过程。如果编写了那样的过程,应确保设置一个标志用来防止在当前变化进行中更进一步的变化。

避免创建两个或两个以上其 Change 事件过程互相影响的控件。例如,两个 TextBox 控件在它们的 Change 事件期间互相更新。

避免对 HScrollBar 和 VScrollBar 控件在 Change 事件中使用 MsgBox 函数或语句。

例:本例在 TextBox 控件中显示水平滚动条的 Value 属性的数值。要尝试这个例子,需创建一个带有 TextBox 控件及 HScrollBar 控件的窗体,然后将码粘贴到一个带有水平滚动条 (HScrollBar 控件) 和 TextBox 控件的窗体的声明部分。按 F5 键并单击水平滚动条。

Private Sub Form_Load ()
HScroll1.Min = 0 ' 设置最小值。
HScroll1.Max = 1000 ' 设置最大值。
HScroll1.LargeChange = 100 ' 设置 LargeChange.
HScroll1.SmallChange = 1 ' 设置SmallChange.
End Sub

Private Sub HScroll1_Change ()
Text1.Text = HScroll1.Value
End Sub
 

 

我在这里学编程 索引篇 共55页[1 2 3 4 5 6 7 >»<... 最后一页]