我正在嘗試在我正在撰寫的類中獲取 onm ouseclick 事件以獲取用戶互動并捕獲螢屏上的單擊以獲取坐標
我看到的 m_mouse 選項是 Terminate、suspend、Resume 和 Help only 可能是一件簡單的事情。

更多資訊:我正在嘗試在圖紙界面中的 Autodesk Inventor(3D 建模)軟體應用程式中單擊滑鼠
Public Class Cls_GetDrawingPickPoint
Private WithEvents m_interaction As Inventor.InteractionEvents
Private WithEvents m_mouse As InteractionEvents
Private m_position As Point2d
Private m_button As MouseButtonEnum
Private m_continue As Boolean
Public Sub New()
End Sub
Public Function GetDrawingPoint(Prompt As String, button As MouseButtonEnum) As Point2d
m_position = Nothing
m_button = button
' Start selection.
m_interaction = g_inventorApplication.CommandManager.CreateInteractionEvents
m_mouse = m_interaction.MouseEvents
m_interaction.StatusBarText = Prompt
m_interaction.Start()
Do While m_continue
g_inventorApplication.UserInterfaceManager.DoEvents()
Loop
m_interaction.Stop()
GetDrawingPoint = m_position
Return GetDrawingPoint
'Debug.Print("GetDrawingPoint: " & GetDrawingPoint.X & "," & GetDrawingPoint.Y)
End Function
Private Sub m_mouse_OnMouseClick(button As MouseButtonEnum, ShiftKeys As ShiftStateEnum, ModelPosition As Point, ViewPosition As Point2d, View As Inventor.View) Handles m_mouse.OnMouseClick
If button = m_button Then
m_position = g_inventorApplication.TransientGeometry.CreatePoint2d(ModelPosition.X, ModelPosition.Y)
Debug.Print(m_position.X & "," & m_position.Y)
End If
m_continue = False
' MsgBox("Mouse clicked: " & m_position.X & "," & m_position.Y)
End Sub
Private Sub m_interaction_OnTerminate() Handles m_interaction.OnTerminate
m_continue = False
m_interaction.Stop()
End Sub
Private Sub m_interaction_OnActivate() Handles m_interaction.OnActivate
m_continue = True
End Sub
End Class
uj5u.com熱心網友回復:
看起來實際的物件是 type MouseEvents,它繼承了InteractionEvents,并且OnMouseDown是該型別的成員。該m_mouse欄位需要宣告為該型別才能訪問該型別的成員。
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/529164.html
標籤:VB.net班级欧特克
