Instruktaż: Tworzenie menu skrótów dla zakładki
W tym instruktażu przedstawiono sposób tworzenia menu skrótów dla Bookmark formanty w dostosowywania poziomie dokumentu dla programu Word.Gdy użytkownik kliknie prawym przyciskiem myszy tekst zakładki, menu skrótów pojawia się i daje możliwości użytkownika, do formatowania tekstu.
Dotyczy: Informacje przedstawione w tym temacie dotyczą projektów na poziomie dokumentu dla programu Word 2013 i Word 2010. Aby uzyskać więcej informacji, zobacz Funkcje dostępne w aplikacji pakietu Office i typ projektu.
W tym instruktażu przedstawiono następujące zadania:
Tworzenie projektu.
Dodawanie tekstu i zakładek w dokumencie.
Dodawanie polecenia do Menu skrótów.
Aby sformatować tekst zakładki.
[!UWAGA]
Na danym komputerze mogą być używane inne nazwy lub lokalizacje pewnych elementów interfejsu użytkownika programu Visual Studio, które są używane w poniższych instrukcjach. Używana wersja programu Visual Studio oraz jej ustawienia określają te elementy. Aby uzyskać więcej informacji, zobacz Visual Studio, ustawienia.
Wymagania wstępne
Potrzebne do przeprowadzenia tego instruktażu następujące składniki:
-
Wersja Visual Studio 2012 zawierająca narzędzia dla deweloperów pakietu Microsoft Office. Aby uzyskać więcej informacji, zobacz [Konfigurowanie komputera do opracowywania rozwiązań pakietu Office](bb398242\(v=vs.110\).md).
- Word 2013 lub Word 2010
Tworzenie projektu
Pierwszym krokiem jest utworzenie projekt dokumentu programu Word w Visual Studio.
Aby utworzyć nowy projekt
Utwórz projekt dokumentu programu Word o nazwie Moje Menu skrótów zakładki.W oknie kreatora wybierz Utwórz nowy dokument.Aby uzyskać więcej informacji, zobacz Jak: tworzenie projektów pakietu Office w programie Visual Studio.
Otwiera nowy dokument programu Word w projektancie programu Visual Studio i dodaje Moje Menu skrótów zakładki projekt Solution Explorer.
Dodawanie tekstu i zakładek w dokumencie
Dodaj tekst do dokumentu, a następnie dodać dwa nakładające się zakładki.
Aby dodać tekst do dokumentu
W dokumencie, który pojawia się w Projektancie projektu wpisz następujący tekst.
Jest to przykład tworzenia menu skrótów po kliknięciu prawym przyciskiem myszy tekst zakładki.
Aby dodać formant zakładki do dokumentu
W Przybornik, z Kontroli słowo karta, przeciągnij Bookmark formantu do dokumentu.
Dodać formant zakładki pojawi się okno dialogowe.
Zaznacz wyrazy "Tworzenie menu skrótów po kliknięciu prawym przyciskiem myszy tekst", a następnie kliknij przycisk OK.
bookmark1jest dodawane do dokumentu.
Dodaj kolejny Bookmark kontroli na słowa "prawym przyciskiem myszy tekst zakładki".
bookmark2jest dodawane do dokumentu.
[!UWAGA]
Wyrazy "prawym przyciskiem myszy tekst" są w obu bookmark1 i bookmark2.
Podczas dodawania zakładki do dokumentu w czasie projektowania, Bookmark formant nie zostanie utworzony.Można zaprogramować przeciwko kilka zdarzeń zakładki.Można napisać kod BeforeRightClick zdarzenie zakładki, tak aby po kliknięciu tekstu zakładki menu skrótów pojawia się.
Dodawanie polecenia do Menu skrótów
Dodawanie przycisków do menu skrótów, które pojawia się po kliknięciu prawym przyciskiem myszy dokument.
Aby dodać polecenia do menu skrótów
Dodaj XML wstążki element do projektu.Aby uzyskać więcej informacji, zobacz Jak: rozpocząć dostosowywanie wstążki.
W Solution Explorer, wybierz opcję ThisDocument.cs lub projekcie ThisDocument.vb.
Na pasku menu wybierz Widok, Kod.
ThisDocument plik klasy zostanie otwarty w edytorze kodu.
Dodaj następujący kod do ThisDocument klasy.Zastępuje ten kod CreateRibbonExtensibilityObject metoda i zwraca wartość XML wstążki klasy do aplikacji pakietu Office.
Protected Overrides Function CreateRibbonExtensibilityObject() As Microsoft.Office.Core.IRibbonExtensibility Return New Ribbon1() End Function
protected override Microsoft.Office.Core.IRibbonExtensibility CreateRibbonExtensibilityObject() { return new Ribbon1(); }
W Solution Explorer, wybierz plik XML wstążki.Domyślnie plik XML wstążki o nazwie Ribbon1.xml.
Na pasku menu wybierz Widok, Kod.
Edytor kodu otwiera się plik xml wstążki.
Następujący kod w edytorze kodu zastąpić zawartość pliku XML wstążki.
<?xml version="1.0" encoding="UTF-8"?> <customUI xmlns="https://schemas.microsoft.com/office/2009/07/customui" onLoad="Ribbon_Load"> <contextMenus> <contextMenu idMso="ContextMenuText"> <button id="BoldButton" label="Bold" onAction="ButtonClick" getVisible="GetVisible" /> <button id="ItalicButton" label="Italic" onAction="ButtonClick" getVisible="GetVisible"/> </contextMenu> </contextMenus> </customUI>
Ten kod dodaje dwa przyciski menu skrótów, które pojawia się po kliknięciu prawym przyciskiem myszy dokument.
W Solution Explorer, kliknij prawym przyciskiem myszy ThisDocument, a następnie kliknij przycisk Widok Kod.
Deklarujemy następujące zmienne i zmiennej zakładki na poziomie klasy.
Public selectedBookmark As Microsoft.Office.Tools.Word.Bookmark Public ShowBoldButton As String = False Public ShowItalicButton As String = False Public WordTrue As Integer = -1 Public WordFalse As Integer = 0
public Microsoft.Office.Tools.Word.Bookmark selectedBookmark; public bool showBoldButton = false; public bool showItalicButton = false; public int WordTrue = -1; public int WordFalse = 0;
W Solution Explorer, wybierz plik kodu wstążki.Domyślnie plik kodu wstążki o nazwie Ribbon1.cs lub Ribbon1.vb.
Na pasku menu wybierz Widok, Kod.
Plik kod wstążki zostanie otwarty w edytorze kodu.
W pliku kodu wstążki Dodaj następującą metodę.Jest to metoda wywołania zwrotnego dla dwóch przycisków, które zostały dodane do menu skrótów dokumentu.Metoda ta określa, czy te przyciski są wyświetlane w menu skrótów.Przyciski pogrubienie i kursywa są wyświetlane tylko wtedy, gdy kliknij prawym przyciskiem myszy tekst w zakładce.
Public Function GetVisible(ByVal control As Office.IRibbonControl) As Boolean If control.Id = "BoldButton" Then If Globals.ThisDocument.ShowBoldButton = True Then Globals.ThisDocument.ShowBoldButton = False Return True Else Return False End If ElseIf control.Id = "ItalicButton" Then If Globals.ThisDocument.ShowItalicButton = True Then Globals.ThisDocument.ShowItalicButton = False Return True Else Return False End If Else Return False End If End Function
public bool GetVisible(Office.IRibbonControl control) { if (control.Id == "BoldButton") { if (Globals.ThisDocument.showBoldButton == true) { Globals.ThisDocument.showBoldButton = false; return true; } else { return false; } } else if (control.Id == "ItalicButton") { if (Globals.ThisDocument.showItalicButton == true) { Globals.ThisDocument.showItalicButton = false; return true; } else { return false; } } else { return false; } }
Aby sformatować tekst zakładki
W pliku kodu wstążki, dodać ButtonClick obsługi zdarzeń, aby zastosować formatowanie do zakładki.
Public Sub ButtonClick(ByVal control As Office.IRibbonControl) If control.Id = "BoldButton" Then If Globals.ThisDocument.selectedBookmark.Bold = _ Globals.ThisDocument.WordTrue Then Globals.ThisDocument.selectedBookmark.Bold = _ Globals.ThisDocument.WordFalse Else Globals.ThisDocument.selectedBookmark.Bold = _ Globals.ThisDocument.WordTrue End If ElseIf control.Id = "ItalicButton" Then If Globals.ThisDocument.selectedBookmark.Italic = _ Globals.ThisDocument.WordTrue Then Globals.ThisDocument.selectedBookmark.Italic = _ Globals.ThisDocument.WordFalse Else Globals.ThisDocument.selectedBookmark.Italic = _ Globals.ThisDocument.WordTrue End If End If End Sub
public void ButtonClick(Office.IRibbonControl control) { if (control.Id == "BoldButton") { if (Globals.ThisDocument.selectedBookmark.Bold == Globals.ThisDocument.WordTrue) { Globals.ThisDocument.selectedBookmark.Bold = Globals.ThisDocument.WordFalse; } else { Globals.ThisDocument.selectedBookmark.Bold = Globals.ThisDocument.WordTrue; } } else if (control.Id == "ItalicButton") { if (Globals.ThisDocument.selectedBookmark.Italic == Globals.ThisDocument.WordTrue) { Globals.ThisDocument.selectedBookmark.Italic = Globals.ThisDocument.WordFalse; } else { Globals.ThisDocument.selectedBookmark.Italic = Globals.ThisDocument.WordTrue; } } }
Eksplorator, wybierz opcję ThisDocument.cs lub projekcie ThisDocument.vb.
Na pasku menu wybierz Widok, Kod.
ThisDocument plik klasy zostanie otwarty w edytorze kodu.
Dodaj następujący kod do ThisDocument klasy.
Private Sub Bookmark_BeforeRightClick(ByVal sender As Object, ByVal e _ As Microsoft.Office.Tools.Word.ClickEventArgs) _ Handles Bookmark1.BeforeRightClick, Bookmark2.BeforeRightClick Dim startPosition As Integer = 0 Dim i As Integer ' If bookmarks overlap, get bookmark closest to cursor. For i = 1 To e.Selection.Bookmarks.Count If e.Selection.Bookmarks(i).Start > startPosition Then startPosition = e.Selection.Bookmarks(i).Start End If Next ' If closest bookmark is the sender, show the shortcut menu options. If DirectCast(sender, Microsoft.Office.Tools.Word.Bookmark).Start = _ startPosition Then selectedBookmark = DirectCast(sender, Microsoft.Office.Tools.Word.Bookmark) ShowBoldButton = True ShowItalicButton = True End If End Sub
void bookmark_BeforeRightClick(object sender, ClickEventArgs e) { int startPosition = 0; // If bookmarks overlap, get bookmark closest to cursor. for (int i = 1; i <= e.Selection.Bookmarks.Count; i++) { if (e.Selection.Bookmarks[i].Start > startPosition) { startPosition = e.Selection.Bookmarks[i].Start; } } // If closest bookmark is the sender, show shortcut menu options. if (((Microsoft.Office.Tools.Word.Bookmark)sender).Start == startPosition) { selectedBookmark = (Microsoft.Office.Tools.Word.Bookmark)sender; showBoldButton = true; showItalicButton = true; } }
[!UWAGA]
Należy napisać kod obsługujący sprawy, w którym nakładają się zakładki.Jeśli nie, domyślnie, kod zostanie wywołany dla wszystkich zakładek do zaznaczenia.
W języku C#, należy dodać obsługę zdarzeń dla formantów zakładki do Startup zdarzenie.Aby uzyskać informacje dotyczące tworzenia procedury obsługi zdarzeń, zobacz Jak: tworzenie programów obsługi zdarzeń w projektach pakietu Office.
private void ThisDocument_Startup(object sender, System.EventArgs e) { this.bookmark1.BeforeRightClick += new ClickEventHandler(bookmark_BeforeRightClick); this.bookmark2.BeforeRightClick += new ClickEventHandler(bookmark_BeforeRightClick); }
Testowanie aplikacji
Test dokument, aby zweryfikować, że po kliknięciu prawym przyciskiem myszy tekst zakładki w menu skrótów zostaną wyświetlone elementy menu pogrubienie i kursywa, i że tekst jest sformatowany poprawnie.
Aby przetestować dokument
Naciśnij klawisz F5, aby uruchomić projekt.
Kliknij prawym przyciskiem myszy w pierwszej zakładki, a następnie kliknij przycisk Pogrubienie.
Sprawdź, czy cały tekst w bookmark1 jest sformatowany jako pogrubiony.
Kliknij prawym przyciskiem myszy tekst, w którym nakładają się zakładki, a następnie kliknij przycisk Kursywa.
Sprawdź, czy cały tekst w bookmark2 jest kursywa i tylko część tekstu w bookmark1 , nakłada się na bookmark2 jest pisany kursywą.
Następne kroki
Poniżej przedstawiono niektóre zadania, które może się dalej:
Pisanie kodu w celu reagowania na zdarzenia formantów hosta w programie Excel.Aby uzyskać więcej informacji, zobacz Instruktaż: Programowanie przeciwko zdarzenia formantu NamedRange.
Użyj pola wyboru do zmiany formatowania w zakładki.Aby uzyskać więcej informacji, zobacz Instruktaż: Zmiana formatowania dokumentu za pomocą kontrolek CheckBox.
Zobacz też
Koncepcje
Instruktaże za pomocą w programie Word
Automatyzowanie programu Word przy użyciu obiektów rozszerzony
Parametry opcjonalne w rozwiązania dla pakietu Office
Inne zasoby
Dodatek dostosowywania interfejsu użytkownika pakietu Office