[Résolu] [Calc] Désactiver le menu contextuel

Discussions et questions sur tout ce qui concerne la programmation tous langages et tous modules confondus.

Modérateur : Vilains modOOs

Règles du forum
:alerte: Balisage obligatoire dans cette section !
Aidez-nous à vous aider au mieux en balisant correctement votre question : reportez-vous sur les règles de cette section avant de poster !
secathor
Fraîchement OOthentifié
Messages : 2
Inscription : 01 nov. 2009 22:17

[Résolu] [Calc] Désactiver le menu contextuel

Message par secathor »

Bonjour a tous

Je suis entrain de convertir les macros VBA d'un fichier Excel.

L'une des macros affiche une boite de dialogue lors d'un bouton droit de la souris.
Lorsque je ferme cette boite de dialogue, le menu contextuelle apparait.

J'aimerai donc déactivé ce menu, est-ce qu'il y a moyen de le faire ?

Merci de votre aide !
Dernière modification par Oukcha le 02 nov. 2009 06:46, modifié 3 fois.
OpenOffice 3.1.1 / Windows 7
secathor
Fraîchement OOthentifié
Messages : 2
Inscription : 01 nov. 2009 22:17

Re: [Calc] Déactivé le menu contextuelle

Message par secathor »

Voici la réponse a ma question :

Code : Tout sélectionner

Option Explicit
  Global oDocView As Object
  Global oContextMenuInterceptor As Object
'_______________________________________________________________________________
Sub registerContextMenuInterceptor
	oDocView = ThisComponent.CurrentController
	oContextMenuInterceptor = CreateUnoListener("ThisDocument_", "com.sun.star.ui.XContextMenuInterceptor")
	oDocView.registerContextMenuInterceptor(oContextMenuInterceptor)
End Sub
'_______________________________________________________________________________
Sub releaseContextMenuInterceptor
	On Error Resume Next
	oDocView.releaseContextMenuInterceptor(oContextMenuInterceptor)
End Sub
'_______________________________________________________________________________
Function ThisDocument_notifyContextMenuExecute(ContextMenuExecuteEvent As Object) As Variant
  dim aaa as integer
  aaa = msgbox("blabla", 4 + 48)
  if aaa = 6 then
'    msgbox "Yes"
    ThisDocument_notifyContextMenuExecute = com.sun.star.ui.ContextMenuInterceptorAction.IGNORED
  else
'    msgbox "No"
	ThisDocument_notifyContextMenuExecute = com.sun.star.ui.ContextMenuInterceptorAction.CANCELLED
  end if
End Function
OpenOffice 3.1.1 / Windows 7