UpDown 类
UpDown 是一个小型微调控件 --- 一对上/下箭头按钮,每次点击将内部 Value 调整 Increment。通常与外部文本框或标签配对以显示当前值。
Private Sub Form_Load()
UpDown1.Min = 0
UpDown1.Max = 100
UpDown1.Increment = 5
UpDown1.Value = 50
End Sub
Private Sub UpDown1_Change()
Text1.Text = UpDown1.Value
End Sub
Private Sub Text1_Change()
If IsNumeric(Text1.Text) Then UpDown1.Value = CLng(Text1.Text)
End Sub控件从 BaseControlFocusableNoFont 继承可聚焦矩形可停靠成员 --- 大小、位置、Anchors、Dock、Appearance、MousePointer / MouseIcon、ToolTipText、DragMode / DragIcon、Drag、Refresh、SetFocus、TabIndex / TabStop、ZOrder、CausesValidation、VisualStyles、hWnd、HelpContextID / WhatsThisHelpID。UpDown 没有 Font 属性(箭头由OS主题绘制)。
无自动伙伴
与VB6时代的Win32 msctls_updown32 控件不同,此 UpDown 不自动附加到"伙伴"文本框 --- 没有暴露 UDS_AUTOBUDDY 样式。通过处理 Change、UpClick 和 DownClick 手动将微调控件与另一个控件配对。
三种事件形式
三种事件让应用程序以不同粒度观察微调交互:
属性
Increment
每次点击箭头按钮时 Value 的变化量。Long。默认:1。存储为 UDACCEL 记录的 nInc 字段,通过 UDM_SETACCEL 应用。
Max
范围的上限。Long。默认:10。通过 UDM_SETRANGE32 应用。
Min
范围的下限。Long。默认:0。
Orientation
控件的方向。OrientationConstants 的成员(ccOrientationHorizontal 或 ccOrientationVertical)。默认:ccOrientationHorizontal。运行时更改此属性会重新创建底层Win32窗口。
ToolTipText
用户悬停在控件上时显示的工具提示字符串。String。继承但重新暴露。
Value
当前微调值。Long。默认成员。通过 UDM_GETPOS32 读取,通过 UDM_SETPOS32 写入。编程设置时触发 Change。钳位到 [Min, Max]。
VisualStyles
是否应用OS视觉样式主题。Boolean。默认:True。继承但重新暴露。
事件
Change
当 Value 因用户交互、箭头点击或代码而更改时触发。
语法:object_Change( )
DownClick
当用户点击下箭头且 Value 成功减少时触发。
语法:object_DownClick( )
DragDrop, DragOver
继承的拖放事件。
GotFocus, LostFocus
继承的焦点事件。
Initialize
控件窗口创建后触发。
MouseDown, MouseMove, MouseUp
继承的鼠标事件。
OLECompleteDrag, OLEDragDrop, OLEDragOver, OLEGiveFeedback, OLESetData, OLEStartDrag
继承的OLE拖放事件。
UpClick
当用户点击上箭头且 Value 成功增加时触发。
语法:object_UpClick( )
Validate
继承的验证事件。
另见
- Slider --- 当需要可视化范围时的可拖动滑块
- OrientationConstants --- UpDown 和 Slider 使用的共享水平/垂直枚举
- ControlTypeConstants --- vbUpDown 所在位置