[VBA]急!!请教各位大侠:关于复选框
我编了个简单程序,如下所示:Private Sub CommandButton1_Click()
Dim ptpick As Variant
Restraint_apply_node.Hide
ptpick = ThisDrawing.Utility.GetPoint
Dim pointobj As AcadPoint
If CheckBox1.Value = 1 Or CheckBox2.Value = 1 Or CheckBox3.Value = 1 Or_ CheckBox4.Value = 1 Or CheckBox5.Value = 1 Or CheckBox6.Value = 1 Then
Set pointobj = ThisDrawing.ModelSpace.AddPoint(ptpick)
ThisDrawing.SetVariable "pdmode", 67
ThisDrawing.SetVariable "pdsize", 20
End If
Restraint_apply_node.Show
End Sub
目的是进行选取点操作后,经判断复选框的选项是否被选上,若被选上,则把选取点改变形式。但此程序执行后,好像并不能执行if语句,也就是努能改变点的形式,这个原因是什么呀?请大家帮忙了!!!
Value 属性
定义某给定的控件的状态或内容。
语法
object. Value [= Variant]
Value 属性的语法包括以下成分:
成分
描述object
必需。有效对象。Variant
可选。控件的状态或内容。
设置
控件
描述复选框
整数,表明此条目是否被选中。
Null表明该条目处于空的状态,既未被选中,也未被。
-1 True。表明此条目被选中。
0 False。表明此条目被清除。 就CheckBox1.Value一值比较特殊 VBA里和VB里居然不通用 让人匪夷所思
如果想把VBA里的程序 转移至VB里
那这是必须改的一步
如同楼上说的 VBA里 VALUE值为 -1 或者 0 (也可以用 True 或者 False)
但是 VB里 却是 1 和0 (只能用False)
所以转换程序的时候 要多注意这一点
谢谢两位指点,我也试过了,只需把checkbox.value=1改为checkbox.value就ok了,它默认为false,选上后就是ture了。谢谢!!!!
页:
[1]