Exemplarische Vorgehensweise: Automatisieren einer Anwendung über einen benutzerdefinierten Aufgabenbereich
Aktualisiert: November 2007
Betrifft |
---|
Die Informationen in diesem Thema gelten nur für die angegebenen Visual Studio Tools for Office-Projekte und Microsoft Office-Anwendungen. Projekttyp
Microsoft Office-Anwendung
Weitere Informationen hierzu finden Sie unter Verfügbare Features nach Anwendung und Projekttyp. |
In dieser exemplarischen Vorgehensweise wird veranschaulicht, wie ein benutzerdefinierter Aufgabenbereich erstellt wird, der PowerPoint automatisiert. Der benutzerdefinierte Aufgabenbereich fügt Daten in eine Folie ein, wenn der Benutzer auf ein MonthCalendar-Steuerelement klickt, das sich im benutzerdefinierten Aufgabenbereich befindet.
Obwohl in dieser exemplarischen Vorgehensweise speziell PowerPoint verwendet wird, gelten die Konzepte in dieser exemplarischen Vorgehensweise für alle oben aufgelisteten Anwendungen.
In dieser exemplarischen Vorgehensweise werden die folgenden Aufgaben veranschaulicht:
Entwerfen der Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs
Automatisieren von PowerPoint über den benutzerdefinierten Aufgabenbereich
Anzeigen des benutzerdefinierten Aufgabenbereichs in PowerPoint
Hinweis: |
---|
Auf Ihrem Computer werden möglicherweise andere Namen oder Speicherorte für die Benutzeroberflächenelemente von Visual Studio, die in den folgenden Anweisungen aufgeführt sind, angezeigt. Die von Ihnen verwendete Visual Studio-Edition und die Einstellungen legen diese Elemente fest. Weitere Informationen hierzu finden Sie unter Visual Studio-Einstellungen. |
Vorbereitungsmaßnahmen
Zum Durchführen dieser exemplarischen Vorgehensweise benötigen Sie die folgenden Komponenten:
Visual Studio Tools for Office (eine optionale Komponente von Visual Studio 2008 Professional und Visual Studio Team System).
Microsoft Office PowerPoint 2007.
Visual Studio Tools for Office wird standardmäßig mit den aufgeführten Versionen von Visual Studio installiert. Wie Sie überprüfen können, ob die Software installiert ist, erfahren Sie in Installieren von Visual Studio Tools for Office.
Erstellen des Add-In-Projekts
Im ersten Schritt erstellen Sie ein Add-In-Projekt für PowerPoint.
So erstellen Sie ein neues Projekt
Erstellen Sie ein PowerPoint-Add-In-Projekt mit dem Namen MyAddIn unter Verwendung der PowerPoint-Add-In-Projektvorlage für 2007 Microsoft Office System. Weitere Informationen hierzu finden Sie unter Gewusst wie: Erstellen von Visual Studio Tools for Office-Projekte.
Visual Studio öffnet die Codedatei ThisAddIn.cs oder ThisAddIn.vb und fügt dem Projektmappen-Explorer das MyAddIn-Projekt hinzu.
Entwerfen der Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs
Es gibt keinen visuellen Designer für benutzerdefinierte Aufgabenbereiche, Sie können aber dennoch ein Benutzersteuerelement mit dem gewünschten Layout entwerfen. Im weiteren Verlauf dieser exemplarischen Vorgehensweise fügen Sie dem benutzerdefinierten Aufgabenbereich das Benutzersteuerelement hinzu.
So entwerfen Sie die Benutzeroberfläche des benutzerdefinierten Aufgabenbereichs
Klicken Sie im Menü Projekt auf Benutzersteuerelement hinzufügen.
Ändern Sie im Dialogfeld Neues Element hinzufügen den Namen des Benutzersteuerelements in MyUserControl, und klicken Sie auf Hinzufügen.
Das Benutzersteuerelement wird im Designer geöffnet.
Ziehen Sie von der Registerkarte Allgemeine Steuerelemente der Toolbox ein MonthCalendar-Steuerelement auf das Benutzersteuerelement.
Wenn der Umfang des MonthCalendar-Steuerelements größer als die Entwurfsoberfläche des Benutzersteuerelements ist, passen Sie die Größe des Benutzersteuerelements an das MonthCalendar-Steuerelement an.
Automatisieren von PowerPoint über den benutzerdefinierten Aufgabenbereich
Mit dem Add-In soll in der ersten Folie der aktiven Präsentation ein ausgewähltes Datum eingefügt werden. Verwenden Sie das DateChanged-Ereignis des Steuerelements, um das ausgewählte Datum bei jeder Änderung des Datums hinzuzufügen.
So automatisieren Sie PowerPoint über den benutzerdefinierten Aufgabenbereich
Doppelklicken Sie im Designer auf das MonthCalendar-Steuerelement.
Die Datei MyUserControl.cs oder MyUserControl.vb wird geöffnet, und der Ereignishandler für das DateChanged-Ereignis wird erstellt.
Fügen Sie am Anfang der Datei folgenden Code hinzu. Mit diesem Code werden Aliase für den Microsoft.Office.Core-Namespace und den Microsoft.Office.Interop.PowerPoint-Namespace erstellt.
Imports Office = Microsoft.Office.Core Imports PowerPoint = Microsoft.Office.Interop.PowerPoint
using Office = Microsoft.Office.Core; using PowerPoint = Microsoft.Office.Interop.PowerPoint;
Fügen Sie der MyUserControl-Klasse folgenden Code hinzu. Mit diesem Code wird eine Instanz von Microsoft.Office.Interop.PowerPoint.Shape als Member von MyUserControl deklariert. Im nächsten Schritt verwenden Sie diese Microsoft.Office.Interop.PowerPoint.Shape, um einer Folie in der aktiven Präsentation ein Textfeld hinzuzufügen.
Private TextBox As PowerPoint.Shape
private PowerPoint.Shape textbox;
Ersetzen Sie den monthCalendar1_DateChanged-Ereignishandler durch folgenden Code. Mit diesem Code wird in die erste Folie in der aktiven Präsentation ein Textfeld eingefügt, in das anschließend das gegenwärtig ausgewählte Datum eingefügt wird. Im Code wird mithilfe des Globals.ThisAddIn-Objekts auf das PowerPoint-Objektmodell zugegriffen.
Private Sub MonthCalendar1_DateChanged( _ ByVal sender As System.Object, _ ByVal e As System.Windows.Forms.DateRangeEventArgs) _ Handles MonthCalendar1.DateChanged Try If TextBox IsNot Nothing Then TextBox.Delete() End If Dim Slide As PowerPoint.Slide Slide = Globals.ThisAddIn.Application.ActivePresentation.Slides(1) TextBox = Slide.Shapes.AddTextbox( _ Office.MsoTextOrientation.msoTextOrientationHorizontal, _ 50, 100, 600, 50) TextBox.TextFrame.TextRange.Text = e.Start.ToLongDateString() TextBox.TextFrame.TextRange.Font.Size = 48 TextBox.TextFrame.TextRange.Font.Color.RGB = _ System.Drawing.Color.DarkViolet.ToArgb() Catch ex As Exception System.Windows.Forms.MessageBox.Show(ex.ToString()) End Try End Sub
private void monthCalendar1_DateChanged(object sender, DateRangeEventArgs e) { try { if (textbox != null) { textbox.Delete(); } PowerPoint.Slide slide = Globals.ThisAddIn.Application.ActivePresentation.Slides[1]; textbox = slide.Shapes.AddTextbox( Office.MsoTextOrientation.msoTextOrientationHorizontal, 50, 100, 600, 50); textbox.TextFrame.TextRange.Text = e.Start.ToLongDateString(); textbox.TextFrame.TextRange.Font.Size = 48; textbox.TextFrame.TextRange.Font.Color.RGB = Color.DarkViolet.ToArgb(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }
Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das MyAddIn-Projekt, und klicken Sie dann auf Erstellen. Überprüfen Sie, ob sich das Projekt fehlerfrei erstellen lässt.
Anzeigen des benutzerdefinierten Aufgabenbereichs
Um den benutzerdefinierten Aufgabenbereich beim Starten des Add-Ins anzuzeigen, fügen Sie dem Aufgabenbereich das Benutzersteuerelement im Startup-Ereignishandler des Add-Ins hinzu.
So zeigen Sie den benutzerdefinierten Aufgabenbereich an
Erweitern Sie im Projektmappen-ExplorerPowerPoint.
Klicken Sie mit der rechten Maustaste auf ThisAddIn.cs oder ThisAddIn.vb, und klicken Sie auf Code anzeigen.
Fügen Sie der ThisAddIn-Klasse folgenden Code hinzu. In diesem Code werden Instanzen von MyUserControl und CustomTaskPane als Member der ThisAddIn-Klasse deklariert.
Private myUserControl1 As MyUserControl Private myCustomTaskPane As Microsoft.Office.Tools.CustomTaskPane
private MyUserControl myUserControl1; private Microsoft.Office.Tools.CustomTaskPane myCustomTaskPane;
Ersetzen Sie den ThisAddIn_Startup-Ereignishandler durch folgenden Code. In diesem Code wird ein neues CustomTaskPane-Element erstellt, indem das MyUserControl-Objekt zur CustomTaskPanes-Auflistung hinzugefügt wird. Im Code wird auch der Aufgabenbereich angezeigt.
Private Sub ThisAddIn_Startup(ByVal sender As Object, _ ByVal e As System.EventArgs) Handles Me.Startup myUserControl1 = New MyUserControl myCustomTaskPane = Me.CustomTaskPanes.Add(myUserControl1, "Calendar") myCustomTaskPane.Visible = True End Sub
private void ThisAddIn_Startup(object sender, System.EventArgs e) { myUserControl1 = new MyUserControl(); myCustomTaskPane = this.CustomTaskPanes.Add(myUserControl1, "Calendar"); myCustomTaskPane.Visible = true; }
Testen des Add-Ins
Wenn Sie das Projekt ausführen, wird PowerPoint geöffnet, und das Add-In zeigt den benutzerdefinierten Aufgabenbereich an. Klicken Sie auf das MonthCalendar-Steuerelement, um den Code zu testen.
So testen Sie das Add-In
Drücken Sie F5, um das Projekt auszuführen.
Vergewissern Sie sich, dass der benutzerdefinierte Aufgabenbereich sichtbar ist.
Klicken Sie im MonthCalendar-Steuerelement des Aufgabenbereichs auf ein Datum.
Das Datum wird in die erste Folie der aktiven Präsentation eingefügt.
Nächste Schritte
Weitere Informationen über das Erstellen von benutzerdefinierten Aufgabenbereichen finden Sie in diesen Themen:
Erstellen eines benutzerdefinierten Aufgabenbereichs in einem Add-In für eine andere Anwendung in 2007 Microsoft Office System. Weitere Informationen über die Anwendungen, die benutzerdefinierte Aufgabenbereiche unterstützen, finden Sie unter Übersicht über benutzerdefinierte Aufgabenbereiche.
Erstellen einer Multifunktionsleistenschaltfläche, mit der ein benutzerdefinierter Aufgabenbereich ausgeblendet oder angezeigt werden kann. Weitere Informationen finden Sie unter Exemplarische Vorgehensweise: Synchronisieren eines benutzerdefinierten Aufgabenbereichs mit einer Multifunktionsleistenschaltfläche.
Erstellen eines benutzerdefinierten Aufgabenbereichs für jede E-Mail, die in Outlook geöffnet wird. Weitere Informationen hierzu finden Sie unter Exemplarische Vorgehensweise: Anzeigen von benutzerdefinierten Aufgabenbereichen mit E-Mails in Outlook.
Siehe auch
Aufgaben
Gewusst wie: Hinzufügen eines benutzerdefinierten Aufgabenbereichs zu einer Anwendung
Gewusst wie: Anzeigen von benutzerdefinierten Aufgabenbereichen mit E-Mails in Outlook
Konzepte
Übersicht über benutzerdefinierte Aufgabenbereiche
Verwalten von benutzerdefinierten Aufgabenbereichen in mehreren Anwendungsfenstern