VB6技巧 总结

vb设置多行textbox的位置

====================

由于自动输入的文字比较多,最后输入的跑到下面了,想要自动滚动到下面,本来以为 操作滚动条呢,但是没有方法。

于是我巧妙的采用了:

' 显示列表是设置了一个多行 的 textbox
    显示列表.SelStart = Len(显示列表.Text) - 1
    显示列表.SelLength = 1

vb位操作 与或非 操作 的一些猫腻

=====================

'下面的代码有猫腻(就是有问题了,莫名其妙的问题)
dim vData as long,s1 as long,s0,s2,s3 as long
vData=&HFF00EEAA
s0 = vData And &HFF
s1 = vData And &HFF00
s2 = vData And &HFF0000
s3 = vData And &HFF000000

上面的代码的s1 有问题,什么问题呢?&HFF00 不能写成 &H0000FF00 ,就会出问题了,关于 long和integer的问题,以及vb自己自作聪明,将long类型转换成integer类型,但实际上long的前两个字节没有被 0 给 and 掉。就会有问题了,解决办法就是

    s1 = vData And &HF000FF00
    s1 = s1 And &HFFFFF

这样 long类型的s1 才会真正被 and掉一部分呢。

此段代码 是为了 实现 long类型和byte()的转换。

关于vb中的 & 号 ,此特殊符号的用法;& 应该成为 “并且” “连接符” 或什么?

==========

&HFF 就代表 0xFF = 1111 1111(binary)

还有的是把& 放到数字后面,如

&HFF& 这就代表 0x 00FF ,在将 &HXX复制给 long类型的时候,其前面会全部填充F,实际复制为 &H FFXX ,如果是将&HXX&复制给long类型,那么就是他本身的值。没有特殊的什么。

这个好像就能解决上面 and 操作的那个问题了。