vb6代码中控件名称大小的奇怪行为

时间:2010-09-11 12:34:56

标签: ide vb6

我在名为 lblTotal

的表单上有一个标签控件

在我上次提交到存储库的过程中,我很惊讶在修改后的列表中看到了这个表单的名称。

当我查看代码时,我看到此控件名称的所有出现现在都是 lbltotal ,(即Small t)。

控件的名称本身在属性窗口中是 lblTotal

此外,当我使用带有大小写匹配的ctrl-F来查找 lbltotal 时,它只会找到一个,因为所有其他的出现都会立即恢复为 lblTotal 。 因此,似乎在IDE在代码窗口中记录某些事件之后的某个时刻,它会使套管符合控件的名称。

我不明白的是,如果没有更改控件名称,这首先是怎么回事? 有人可以解释一下吗?

PS我写完上面的内容之后,我看到了this。有趣的是,我还有一个字符串变量,其名称在同一次提交期间更改了它的外壳,我认为我必须自己更改它,但现在,阅读上面的内容我认为这是因为相同的变量名称存在于不同的范围内。 但是项目中的任何其他地方都没有出现 lbltotal

PPS lblTotal 实际上是 lblTotal(0),并且在运行时加载了更多副本,因此很多代码引用都是 lbltotal(x1)。标题等我不知道这是否有任何区别。

最后有没有人见过vb6自己改变字符串文字的大小? (请上帝不要!!) 实际上,最后一点是让我对这种体验最不安的原因,因为在TOO中,在条件子句中使用了很多代码库字符串文字。

1 个答案:

答案 0 :(得分:0)

除了上面提到的行为之外,VB6还会重新调整程序引用的任何COM接口中发生的变量名称,这意味着如果您引用新库或更改它们的顺序,那么您就是为了更有趣。

有一次,我甚至写了一个小程序,从名称字典中“右包”VB6源代码;主要缺点是你必须在每次提交源代码之前运行它。

但我认为wqw的答案在这里 - > https://stackoverflow.com/a/1078018/108753可能是我见过的问题的最佳解决方案,因为他已经量化并利用IDE的行为来解决问题。

至少它不是VB3 - VB3重新加载你加载到内存中的任何文件中的每个变量你最后输入的内容。这使您在变量名称中输入案例更加精确....