@Júnio Vieira, seria mais ou menos isso?
Sub RegisterClickHandler()
doc = ThisComponent
l = CreateUnoListener("Handler_", "com.sun.star.awt.XMouseClickHandler")
doc.getCurrentController().addMouseClickHandler(l)
End Sub
Function Handler_disposing(ev)
End Function
Function Handler_mousePressed(ev)
Handler_mousePressed = False
End Function
Function Handler_mouseReleased(ev)
If ev.Buttons = com.sun.star.awt.MouseButton.LEFT Then
async(Array())
End If
Handler_mouseReleased = False
End Function
Sub ShowPopup
oPopup = CreateUnoService("com.sun.star.awt.PopupMenu")
oPopup.insertItem(1, "item1", 0, 0)
oPopup.insertItem(2, "item2", 0, 1)
oCompWin = ThisComponent.getCurrentController()._
getFrame().getComponentWindow()
n = oPopup.execute(oCompWin, _
CreateUnoStruct("com.sun.star.awt.Rectangle"), 0)
If n > 0 Then
msgbox n
End If
End Sub
Sub async(args)
oASync = CreateUnoService( _
"com.sun.star.awt.AsyncCallback")
oCallback = CreateUnoListener("Callback_", _
"com.sun.star.awt.XCallback" )
oASync.addCallback(oCallback, args)
End Sub
Sub Callback_notify( aData )
ShowPopup()
End Sub
Créditos: https://forum.openoffice.org/en/forum...
Tem algum exemplo @Júnio Vieira?