马上注册,结交更多同行朋友,交流,分享,学习。
您需要 登录 才可以下载或查看,没有帐号?注册
x
我是 菜鸟请教个问题,帮我看看下面的VB二次开发程序
我要查找 PM中有用到边界为dgf的程序,即退出FOR循环,然后pd = True。但是我测试了,即使已经查找到有用到dgf边界的程序,但是pd 就是不等于True。后来我发现pmill.ExecuteEx("PRINT FORMVALUE finishing.boundary.activebndry") 的返回值有点奇怪,比如他的返回值是dgf,但是用len( )去测字符的长度却是5(本来应该等于3);如果他的返回值是空值,但是len(abd)=2,也就是用len(abd)的值永远比实际字符数多2。另外,就是如果pmill.ExecuteEx("PRINT FORMVALUE finishing.boundary.activebndry")返回值是数字,就不存在上述情况。想像请教下为什么会出现这种情况。代码如下:
Private Sub Command4_Click()
Dim tpl As New Collection, atp As Long, tpn, i As Integer, tp, pd As Boolean, dd, abd As String
pmill.GetToolpathList tpl, atp
tpn = tpl.Count
pd = False
If tpn > 0 Then
For i = 1 To tpn
tp = "'" & tpl.Item(i) & "'"
pmill.ExecuteEx "ACTIVATE Toolpath" & tp
abd = pmill.ExecuteEx("PRINT FORMVALUE finishing.boundary.activebndry")
If abd = "dgf" Then
pd = True
ceshi=len(abd)
Exit For
End If
Next i
End If
End Sub
|