Jak używać automatyzacji do tworzenia i wyświetlania prezentacji programu PowerPoint przy użyciu programu Visual Basic .NET 2002 lub Visual Basic .NET 2003

Podsumowanie

W tym artykule opisano sposób używania automatyzacji do tworzenia i pokazywania prezentacji programu Microsoft PowerPoint przy użyciu programu Microsoft Visual Basic .NET 2002 lub Visual Basic .NET 2003.

Więcej informacji

Tworzenie klienta automatyzacji dla programu Microsoft PowerPoint

  1. Uruchom program Microsoft Visual Studio .NET 2002 lub Visual Studio .NET 2003. W menu Plik kliknij pozycję Nowy, a następnie kliknij pozycję Projekt. Wybierz pozycję Aplikacja systemu Windows z typów projektów Visual Basic. Formularz 1 jest tworzony domyślnie.

  2. Dodaj odwołanie do biblioteki obiektów programu Microsoft PowerPoint i biblioteki obiektów programu Microsoft Graph. Aby to zrobić, wykonaj następujące kroki.

    1. W menu Projekt kliknij pozycję Dodaj odwołanie.
    2. Na karcie COM znajdź bibliotekę obiektów programu Microsoft PowerPoint, a następnie kliknij pozycję Wybierz. Znajdź również bibliotekę obiektów programu Microsoft Graph, a następnie kliknij pozycję Wybierz.

    Uwaga Pakiet Microsoft Office 2003 i nowsze wersje pakietu Microsoft Office obejmują podstawowe zestawy międzyoperacyjności (PIA). Pakiet Microsoft Office XP nie zawiera identyfikatorów PIA, ale mogą zostać pobrane.

  3. Kliknij przycisk OK w oknie dialogowym Dodawanie odwołań , aby zaakceptować wybrane opcje.

  4. W menu Widok wybierz pozycję Przybornik , aby wyświetlić przybornik i dodać przycisk do formularza Form1.

  5. Kliknij dwukrotnie przycisk Button1. Zostanie wyświetlone okno kodu formularza.

  6. W oknie kodu znajdź następujący kod

        Private Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
    
    End Sub
    
    

    Zastąp ciąg następującym kodem:

        Private Sub Button1_Click(ByVal sender As System.Object, _
            ByVal e As System.EventArgs) Handles Button1.Click
    
    Const sTemplate = _
               "C:\Program Files\Microsoft Office\Templates\Presentation Designs\Blends.pot"
            Const sPic = "C:\WINNT\Soap Bubbles.bmp"
    
    Dim oApp As PowerPoint.Application
            Dim oPres As PowerPoint.Presentation
            Dim oSlide As PowerPoint.Slide
            Dim bAssistantOn As Boolean
    
    'Start Powerpoint and make its window visible but minimized.
            oApp = New PowerPoint.Application()
            oApp.Visible = True
            oApp.WindowState = PowerPoint.PpWindowState.ppWindowMinimized
    
    'Create a new presentation based on the specified template.
            oPres = oApp.Presentations.Open(sTemplate, , , True)
    
    'Build Slide #1:
            'Add text to the slide, change the font and insert/position a 
            'picture on the first slide.
            oSlide = oPres.Slides.Add(1, PowerPoint.PpSlideLayout.ppLayoutTitleOnly)
            With oSlide.Shapes.Item(1).TextFrame.TextRange
                .Text = "My Sample Presentation"
                .Font.Name = "Comic Sans MS"
                .Font.Size = 48
            End With
            oSlide.Shapes.AddPicture(sPic, False, True, 150, 150, 500, 350)
            oSlide = Nothing
    
    'Build Slide #2:
            'Add text to the slide title, format the text. Also add a chart to the
            'slide and change the chart type to a 3D pie chart.
            oSlide = oPres.Slides.Add(2, PowerPoint.PpSlideLayout.ppLayoutTitleOnly)
            With oSlide.Shapes.Item(1).TextFrame.TextRange
                .Text = "My Chart"
                .Font.Name = "Comic Sans MS"
                .Font.Size = 48
            End With
            Dim oChart As Graph.Chart
            oChart = oSlide.Shapes.AddOLEObject(150, 150, 480, 320, _
                        "MSGraph.Chart.8").OLEFormat.Object
            oChart.ChartType = Graph.XlChartType.xl3DPie
            oChart = Nothing
            oSlide = Nothing
    
    'Build Slide #3:
            'Add a text effect to the slide and apply shadows to the text effect.
            oSlide = oPres.Slides.Add(3, PowerPoint.PpSlideLayout.ppLayoutBlank)
            oSlide.FollowMasterBackground = False
            Dim oShape As PowerPoint.Shape
            oShape = oSlide.Shapes.AddTextEffect(Office.MsoPresetTextEffect.msoTextEffect27, _
                "The End", "Impact", 96, False, False, 230, 200)
            oShape.Shadow.ForeColor.SchemeColor = PowerPoint.PpColorSchemeIndex.ppForeground
            oShape.Shadow.Visible = True
            oShape.Shadow.OffsetX = 3
            oShape.Shadow.OffsetY = 3
            oShape = Nothing
            oSlide = Nothing
    
    'Modify the slide show transition settings for all 3 slides in
            'the presentation.
            Dim SlideIdx(3) As Integer
            SlideIdx(0) = 1
            SlideIdx(1) = 2
            SlideIdx(2) = 3
            With oPres.Slides.Range(SlideIdx).SlideShowTransition
                .AdvanceOnTime = True
                .AdvanceTime = 3
                .EntryEffect = PowerPoint.PpEntryEffect.ppEffectBoxOut
            End With
            Dim oSettings As PowerPoint.SlideShowSettings
            oSettings = oPres.SlideShowSettings
            oSettings.StartingSlide = 1
            oSettings.EndingSlide = 3
    
    'Prevent Office Assistant from displaying alert messages.
            bAssistantOn = oApp.Assistant.On
            oApp.Assistant.On = False
    
    'Run the slide show and wait for the slide show to end.
            oSettings.Run()
            Do While oApp.SlideShowWindows.Count >= 1
                System.Windows.Forms.Application.DoEvents()
            Loop
            oSettings = Nothing
    
    'Reenable Office Assisant, if it was on.
            If bAssistantOn Then
                oApp.Assistant.On = True
                oApp.Assistant.Visible = False
            End If
    
    'Close the presentation without saving changes and quit PowerPoint.
            oPres.Saved = True
            oPres.Close()
            oPres = Nothing
            oApp.Quit()
            oApp = Nothing
            GC.Collect()
        End Sub
    
    

    Uwaga W tym kodzie stałe sTemplate i sPic reprezentują pełną ścieżkę i nazwę pliku odpowiednio do szablonu programu PowerPoint i obrazu. Zmodyfikuj te ścieżki zgodnie z potrzebami, aby użyć szablonu lub obrazu zainstalowanego w systemie.

  7. Dodaj następujący kod na początku pliku Form1.vb:

    Imports Office = Microsoft.Office.Core
    Imports Graph = Microsoft.Office.Interop.Graph
    Imports PowerPoint = Microsoft.Office.Interop.PowerPoint
    
  8. Naciśnij klawisz F5, aby skompilować, a następnie uruchomić program.

  9. Kliknij przycisk Button1 w formularzu, aby utworzyć, a następnie pokazać prezentację programu PowerPoint.

Informacje

Aby uzyskać więcej informacji, zobacz następującą witrynę sieci Web microsoft developer network (MSDN): Visual Studio Tools for the Microsoft Office System 2003 Training