sccat 发表于 2005-3-2 14:44:00

请高手看看关于variant的问题

我想判断getxdata返回的variant 是否empty,然后将里面的东西变成字符串返回,怎么不行啊?发生致命错误.


请高手指点一下.



Private Sub CommandButton2_Click()<BR>Dim ssetObj As AcadSelectionSet<BR>Dim elem As AcadObject<BR>Dim DataType As Variant<BR>Dim Data As Variant<BR>                       <BR>                       On Error Resume Next<BR>                       ThisDrawing.SelectionSets("text").Delete<BR>                       Set ssetObj = ThisDrawing.SelectionSets.Add("text")<BR>                       Err.Clear<BR>                       On Error GoTo 0<BR>                       <BR>                       ' Add objects to a selection set by prompting user to select on the screen<BR>                       'While (True)<BR>selectagain:<BR>                       ssetObj.SelectOnScreen<BR>                       For Each elem In ssetObj<BR>               <BR>                                                       If Right(elem.ObjectName, 4) = "Text" Then<BR>                                                       elem.GetXData ApplicationName, DataType, Data<BR>                                                       If IsEmpty(Data) &lt;&gt; True Then<BR>                                                                                       'Label1.Caption = CStr(Data(0)) + " " + CStr(Data(1)) + " " + CStr(Data(2))<BR>                                                                                       Label1.Caption = CStr(Data(0))<BR>                                                       End If<BR>                                                       End If<BR>                                                                                                       <BR>                                                       <BR>                                                       <BR>                       Next<BR>               ' Wend<BR>               <BR>               <BR>               If ssetObj.Count &lt;&gt; 0 Then<BR>               ssetObj.Clear<BR>               GoTo selectagain<BR>               End If<BR>               <BR>                       ssetObj.Delete<BR>End Sub<BR>

yulijin608 发表于 2005-3-2 17:44:00

用If IsArray(DataType) then就可以了
页: [1]
查看完整版本: 请高手看看关于variant的问题