【发布时间】:2013-12-14 00:21:03
【问题描述】:
我有一个带有最小值和最大值文本框的 VB6 表单。文本框的 MaxLength 为 4,并且我有 keyPress 事件的代码以将其限制为数字输入。代码检查以确保 max > min,但是它的行为非常奇怪。它似乎是在比较科学计数法或什么的值。例如,它评估 30 > 200 = true,并且 100 > 20 = false。但是,如果我将条目更改为 030 > 200 和 100 > 020,那么它会给我正确的答案。有谁知道它为什么会这样?
我的代码在下面,我使用控件数组作为最小和最大文本框。
For cnt = 0 To 6
If ParameterMin(cnt) > ParameterMax(cnt) Then
MsgBox ("Default, Min, or Max values out of range. Line not updated.")
Exit Sub
End If
Next cnt
【问题讨论】:
-
我假设
cnt应该是“计数?”有点糟糕的缩写,但也因为它根本不是一个计数,而是一个实例或元素的索引,所以它是一个双重糟糕的选择。应该选择变量名称以增加清晰度,并且按照 I、J、K 等长期约定名称作为“一次性”循环索引名称是不错的选择。 -
谢谢米奇!您的回复也很有帮助,我没有意识到文本框中的值仍然是字符串,我将它们转换为整数并且它评估正确!
标签: textbox vb6 compare operators