十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
vb中的变量取反是:not+变量
我们提供的服务有:做网站、成都网站建设、微信公众号开发、网站优化、网站认证、沅陵ssl等。为上千企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的沅陵网站制作公司
not,and,or,Xor 用做boolean值时,它们就作为逻辑运算符
not,and,or,Xor 用整数值时,它们就作为位运算符
例子:dim a as integer =not 143 ' a=-144 按位取反!~~~~~
首先纠正一下,HFFFFFFFF不是白色,正确的应该是HFFFFFF,共三个字节,每个字节分别是红绿蓝三原色的分量值。如果用HFFFFFFFF(这是四个字节),VB6会报错的。
其次,vbWhite是VB的内部常量,它的值就是HFFFFFF(也就是十进制的16777215),所以不存在转换的问题。建议尽量使用类似vbWhite、vbRed、vbBlue这样的常量来表示颜色,因为它们很直观,即使不懂编程(但懂点英语)的人也知道它们就是白色、红色、蓝色的意思。
你可以自己在VB6的立即窗口验证一下我上面所述是否正确:
Print vbWhite '显示结果为16777215
Print Hex(vbWhite) '显示结果为FFFFFF
补充说一下,颜色的多种表示方式,其实它们最终的值都是相等的,并不需要所谓的转换,比如以下是纯蓝色的多种表示方式:
vbBlue
RGB(0, 0, 255)
HFF0000
16711680
以上这些表示方式,其实它们的值都是一样的,都是等于16711680,你甚至可以拿它们直接来进行数学运算呢!
vbBlue + RGB(0, 0, 255) + HFF0000 + 16711680 = 66846720
66846720 / 4 = 16711680
如果你是想让一个颜色值分解为红绿蓝三原色分量,可以这样:
color1 = vbWhite '这是白色
red = color1 Mod H100 '这是红色分量
green = color1 \ H100 Mod H100 '这是绿色分量
blue = color1 \ H10000 '这是蓝色分量
public Color col(string colorName)
{
Type colorType = typeof(Color);
PropertyInfo info = colorType.GetProperty(colorName, BindingFlags.Public | BindingFlags.Static);
if (infos == null)
{
//throw Exception
}
return(Color)info.GetValue(null, null);
}
是这个意思么?输入“Red”, 返回Color.Red 区分大小写