[VBA]获取用户输入的问题?
<FONT face=宋体 size=2>怎样实现如下功能:<BR><BR>提示用户:“选择对象或[设置(S)]:”后,<BR>用户在屏幕上选择对象,或者输入“S”进入设置窗口<BR><BR>我使用 GetEntity方法好像实现不了,<BR>GetEntity方法选择对象时如果输入字符则提示错误并让继续选择!<BR>而InitializeUserInput方法好像不支持GetEntity</FONT> 可以支持啊:Sub Mccad_InitializeUserInput()' 该示例提示用户选择对象,并通过
' InitializeUserInput 方法定义关键字列表,
' 用户要以用它来输入关键字。
On Error Resume Next
' 定义有效的关键字
Dim keywordList As String
keywordList = "S E"
' 调用 InitializeUserInput 初始化关键字
ThisDrawing.Utility.InitializeUserInput 0, keywordList
' 获得用户输入
Dim Pnt As Variant
Dim ent As AcadEntity
ThisDrawing.Utility.GetEntity ent, Pnt, "选择对象[设置(S)/删除(E)]: "
If Err Then
If StrComp(Err.Number, -2145320928, 1) = 0 Then
' 当输入关键字时
Dim inputString As String
Err.Clear
inputString = ThisDrawing.Utility.GetInput
MsgBox "输入的关键字是: " & inputString
Else
MsgBox "选择对象出错: " & Err.Description
Err.Clear
End If
Else
' 显示用户选定的对象类型
MsgBox "你选定的对象类型为: " & ent.ObjectName, , "明经VBA示例:GetEntity及InitializeUserInput方法"
End If
End Sub 搞定了,谢谢!
页:
[1]