Esta vez es para pedir ayuda si es posible.
Estaba trabajando en un menú sencillo con algunas etiquetas que voy creando en tiempo real y se me ocurrió que si en vez de usar listener como
Código: Seleccionar todo
Mouse = CreateUnoListener( "MenuClick_", "com.sun.star.awt.XMouseListener" )
Código: Seleccionar todo
Sub MenuClick_mousePressed(oEv)
Dim Ctrl_Evento as String
Ctrl_Evento = oEv.Source.Model.Name
if Ctrl_Evento = "Salir" then
Salir
end if
End Sub
Encontre un ejemplo de una funcion que inserta una forma en la hoja y le asigna una macro. Pero este método me parece que solo sirve para el docummento y no funciona con un control de un dialogo.
Código: Seleccionar todo
Sub CreerRectangleAffecterMacro
dim oClasseur as object
dim oPage as object
dim oMonObjet as object
dim sTaille as new com.sun.star.awt.Size
dim sPos as new com.sun.star.awt.Point
dim oEvts as object
dim oEvt(1) as new com.sun.star.beans.PropertyValue
oClasseur = thiscomponent
oPage = oClasseur.sheets.getByName("Sheet1").DrawPage
sTaille.Height = 2310
sTaille.Width = 4620
sPos.X = 3000
sPos.Y = 2310
oMonObjet = oClasseur.createInstance("com.sun.star.drawing.RectangleShape")
oMonObjet.Size = sTaille
oMonObjet.Position = sPos
oPage.add(oMonObjet)
oEvts = oMonObjet.Events 'accès aux événements disponibles pour cette image
oEvt(0).Name = "EventType" 'confection d'un tableau de propriété pour décrire la macro
oEvt(0).Value = "Script" 'qui sera associée à l'événement
oEvt(1).Name = "Script"
oEvt(1).Value = "vnd.sun.star.script:Standard.Module1.Main?language=Basic&location=document"
oEvts.replaceByName("OnClick", oEvt()) 'attribution de la macro à l'événement "Clic sur l'objet"
msgbox "Terminé"
End Sub
Si es posible quisiera que me orienten en como hacer lo mismo con el boton Salir del Diálogo y que ejecute la macro salir.
Les dejo un ejemplo para que lo vean mas claro.
Desde ya les agradezco la ayuda que puedan aportar.