dovendo gestire l'evento Doppi Click su fogli Calc indefiniti e sui quali non voglio aggiungere l'evento Doppio Click dal menu Foglio > Foglio Eventi, all'apertura del documento Calc via basic 'appiccico' tale evento all'intero Documento:
Codice: Seleziona tutto
gMouseHandler = CreateUnoListener("OnDC_", "com.sun.star.awt.XMouseClickHandler")
ThisComponent.CurrentController.addMouseClickHandler(gMouseHandler)
Function OnDC_mouseReleased (e) As Boolean 'MouseEvent
'codice di gestione
OnDC_mouseReleased = False
If e.Buttons <> 1 Then Exit Function'
If e.ClickCount = 2 Then
Dim oActCell
Dim s$ : s$ = "com.sun.star.sheet.SheetCell"' evita bug
oActCell = ThisComponent.CurrentSelection
If oActCell.supportsService(s$) Then
AppDoClick.Generale_DC(oActCell)'codice di gestione
End If
End If
End Function
Tutto funziona perfettamente, ma all'uscita delle funzioni mi trovo la cella del Doppio Click (o quella che le rout hanno selezionato) in edit mode, quindi l'evento continua e si completa con quello predefinito. Vorrei capire come terminare l'evento con il termine delle mie funzioni, e non trovarmi col cursore nella cella in editing.
Grazie in anticipo.
Nicola