请问现在做需要编一个数字控制程序,用到VSROLL1控件,用text控件显示要控制的数字;例如:按下向上的件时数据将连续增加,在text控件中能看到数据变化,当大于80时,数据变为0又继续加,直到松开按键;同样当按下向下的件时,数据减少,当减少到0时,返回到80,又继续减;请问各位高手该怎么解决呢?谢谢大家了!
解决方案 »
- 有个VC写有程序想用VB读取窗口上一个特定LABEL中显示的文本内容
- 我用API函数GetClassName找到了DVD控件MsWebdvd.dll的句柄hWnd,目的是使播放窗口响应我的鼠标输入。可是事与愿违,出重大问题了:
- 谁能告诉我怎么能用Rnd()函数产生不重复的随机数呀!!!(急等)
- 第一次作OCX 请大家帮忙
- 如何得到窗体上一个指定矩形区域的HDC?
- 用VB怎样调用SQL的计划任务
- 用vba处理过的表格,为什么会变小?
- 我想问一下用vb做多媒体,是否可以插入flash文件,请大家帮忙!
- 请问我想将一个用vb6.0做的程序放到启动项目下,但又不想让用户能在msconfig的启动下看出来,怎么办?
- 如何在VB中真正删除Foxfro的DBF文件记录? (很急!很急!很急!很急!很急!)
- 水晶报表为什么显示不了PageFooter
- 用VB怎样检测USB端口有没有链接到外部硬件设备?
按你的问题做的
Private Sub Form_Load()
VScroll1.Min = 0
VScroll1.Max = 10000
End SubPrivate Sub VScroll1_Change()
Text1.Text = VScroll1.Value Mod 81
End Sub
VScroll1.Max = 81
VScroll1.Min = -1
End SubPrivate Sub VScroll1_Change()
x = VScroll1.Value
If x > 80 Then
VScroll1.Value = 0
VScroll1.Refresh
Text1.Text = ""
ElseIf x < 0 Then
VScroll1.Value = 80
VScroll1.Refresh
Text1.Text = ""
Else
Text1.Text = x
End If
End Sub
将你的再改了一下:
Private Sub Form_Load()
VScroll1.Max = 81
VScroll1.Min = -1
End SubPrivate Sub VScroll1_Change()
x = VScroll1.Value
If x > 80 Then
VScroll1.Value = 0
VScroll1.Refresh
Text1.Text = 0
ElseIf x < 0 Then
VScroll1.Value = 80
VScroll1.Refresh
Text1.Text = 80
Else
Text1.Text = x
End If
End Sub
设置一下属性就可以了,不需要额外写事件代码
Private Sub Form_Load()
With UpDown1
.BuddyControl = Text1
.SyncBuddy = True
.Min = 0
.Max = 80
.Value = 0
.Wrap = True
End With
End Sub这是个VB自带控件,在microsoft windows common controls-2 6.0里面