MS Word Plugin, Ajout d'un bouton qui apparaît à un clic droit sur le texte sélectionné

StackOverflow https://stackoverflow.com/questions/684438

  •  22-08-2019
  •  | 
  •  

Question

Je travaille sur un Addin partagé pour MS Word 2007. Je voudrais ajouter un bouton qui apparaît lorsque le texte sélectionné est faites un clic droit. L'instantané ci-joint devrait clairement.

À l'heure actuelle, l'utilisateur doit sélectionner le texte, puis cliquez sur un bouton sur un contrôle personnalisé. Il serait beaucoup plus facile si après avoir sélectionné le texte, il / elle pourrait faire un clic droit et appuyez sur le bouton correspondant dans le menu contextuel.

text alt

Était-ce utile?

La solution 2

Voici comment cela peut se faire ...

Microsoft.Office.Core.CommandBar cellbar = diff.CommandBars["Text"];
Microsoft.Office.Core.CommandBarButton button = (Microsoft.Office.Core.CommandBarButton)cellbar.FindControl(Microsoft.Office.Core.MsoControlType.msoControlButton, 0, "MYRIGHTCLICKMENU", Missing.Value, Missing.Value);
if (button == null)
{
   // add the button
   button = (Microsoft.Office.Core.CommandBarButton)cellbar.Controls.Add(Microsoft.Office.Core.MsoControlType.msoControlButton, Missing.Value, Missing.Value, cellbar.Controls.Count + 1, true);
   button.Caption = "My Right Click Menu Item";
   button.BeginGroup = true;
   button.Tag = "MYRIGHTCLICKMENU";
   button.Click += new Microsoft.Office.Core._CommandBarButtonEvents_ClickEventHandler(MyButton_Click);
}

Autres conseils

Vous devez étendre la contextmenu correcte. Le lien suivant décrit en mots (pas de code source) comment cela peut être atteint:

Shared Addin utilisant Word

Peut-être que cette lien pourrait aider un peu avec le codage. Je ne l'ai pas essayé moi-même, mais il pourrait pointer dans la bonne direction.

Bonne chance! :)

Modifier

Faut-il que le menu contextuel de style ruban ou serait un bouton dans le menu contexte normal suffisant? Dans le cas où le menu normal serait ok, vous pouvez utiliser cette façon (C #):

 Microsoft.Office.Core.CommandBar cb = this.Application.CommandBars["Text"];

 Office.CommandBarControl newButton = cb.Controls.Add(Office.MsoControlType.msoControlButton, missing, missing, missing, missing);  
 newButton.Caption = "Test";
 newButton.Visible = true;
 newButton.Enabled = true;

Vous pouvez le faire avec VSTO, je ne suis pas sûr si cela fonctionne exactement de la même manière avec le partage de la technologie Add-In, mais peut-être cela aide;)

De MSDN -

  

Vous ne pouvez pas modifier la barre d'outils Mini programme.

un peu plus au milieu de la doc. Recherche sur mini-barre d'outils.

Edit: Le pop-up que vous avez encerclés dans l'image ci-dessus ne figure pas sur un clic droit, il apparaît sur surbrillance. Le menu contextuel (ci-dessous le texte sélectionné) pourrait avoir vos fonctionnalités personnalisées, mais pas dans la mini-barre d'outils.

http://groups.google.com/group/microsoft.public.word.docmanagement/browse_thread/thread/cf55d996b3f51a06/65b2bad22e2a3583?lnk=st&q=Removing+Items+from+Word+2007 est de savoir comment faire en VBA. Il est très similaire en utilisant COM et en créant probablement un mot add-in (je ne l'ai pas essayé bien) Vous avez besoin essentiellement de trouver le contrôle du menu contextuel et ajouter un élément à lui (votre fonction).

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top