VB label1.caption减去1怎么表达?

label1.caption="100"
每次点击command1 时label1.caption就会少1,怎么实现?

label1.caption 是字符串,计算减1前转换成数字,再转换成字符显示。VB可以自动识别减号并将字符转换为数字,但最好显示的进行类型转换,要养成好的编程习惯。
Private Sub Command1_Click()
label1.caption=cstr(val(label1.caption)-1)
end if追问

如果默认label1.caption="0" 另有一个timer1时时监测label1.caption每增加1 就msgbox"有增加"。
怎么表达???注意是每增加就提示,减少不会提示。

追答

timer事件添加static变量保存上次的值,如果增加就提示:
static nLastNumber as Integer
if val(label1.caption)>nlastnumber then
msgbox "有增加"
endif
nlastnumber=val(label1.caption)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-10
Private Sub Command1_Click()
Label1.Caption = Label1.Caption - 1
End Sub追问

如果默认label1.caption="0" 另有一个timer1时时监测label1.caption每增加1 就msgbox"有增加"。
怎么表达???注意是每增加就提示,减少不会提示。

第2个回答  2011-05-10
把100设置公共变量a,然后在command1的点击事件中写a=a-1追问

如果默认label1.caption="0" 另有一个timer1时时监测label1.caption每增加1 就msgbox"有增加"。
怎么表达???注意是每增加就提示,减少不会提示。

第3个回答  2011-05-10
Private Sub Command1_Click()
Label1.Caption = Val(Label1.Caption) - 1
End Sub

Private Sub Form_Load()
Label1.Caption = 100
End Sub

画面添加Label1和Command1追问

如果默认label1.caption="0" 另有一个timer1时时监测label1.caption每增加1 就msgbox"有增加"。
怎么表达???注意是每增加就提示,减少不会提示。

追答

定义一个全局变量来记录前一次Label1.Caption中的值 在timer事件里判断
if val(label1.caption) > 前一次的那个全局变量 then
msgbox "有增加"
end if

第4个回答  2011-05-10
规范的写法:
Private Sub command1_Click()
label1.caption=cstr(val(label1.caption)-1)
End Sub
'cstr 转成字符串函数,val 字符串数字转成数值
第5个回答  2011-05-10
Lab1.caption=lab1.caption-1
相似回答
大家正在搜