Como manipular eventos do PowerPoint 2002 usando o Visual Basic .NET 2002

IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.

Clique aqui para ver a versão em Inglês deste artigo: 308330
Este artigo foi arquivado. É oferecido "como está" e não será mais atualizado.
Para obter uma Microsoft Visual translation from VPE for Csharp .NET versão deste artigo, consulte 308825.
Para uma versão deste artigo do Microsoft Visual C++. NET, consulte 309309.
Sumário
Este artigo descreve como manipular eventos do Microsoft PowerPoint 2002 usando o Microsoft Visual Basic .NET 2002.
Mais Informações
Com o Microsoft Visual Studio. NET, você não pode usar representantes para coletar eventos com o PowerPoint. O PowerPoint usa a interface IDispatch para disparar eventos. Para coletar os eventos corretamente, o aplicativo .NET Visual Basic deve usar as interfaces IConnectionPointContainer e IConnectionPoint . O aplicativo de recebimento também deve saber os DISPIDs dos eventos para coletor. Esses DISPIDs não estão listados na biblioteca de tipos do PowerPoint, mas listados no código de exemplo abaixo para referência.

Criar o cliente de automação exemplo Visual Basic .NET

  1. Inicie o Microsoft Visual Studio NET.. No menu arquivo , clique em novo e, em seguida, clique em Project . Clique em Project types em Projetos do Visual Basic , clique Windows Application em modelos . O Form1 é criado por padrão.
  2. Adicione uma referência à Biblioteca de objetos do Microsoft PowerPoint . Para fazer isso, execute as seguintes etapas:
    1. No menu Project , clique em Add Reference .
    2. Na guia COM , localize a Biblioteca de objetos do Microsoft PowerPoint 10.0 e em seguida, clique em Selecionar . Observação : se você ainda não fez isso, é recomendável que você baixe e instale o Microsoft Office XP Primary Interop Assemblies (PIAs). Para obter informações adicionais sobre PIAs do Office XP, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
      328912INFO: Microsoft Office XP PIAs estão disponíveis para download
    3. Clique em OK na caixa de diálogo Add References para aceitar sua seleção. Se você receber uma solicitação para gerar wrappers para as bibliotecas que você selecionou, clique em Sim .
  3. No menu Exibir , clique em caixa de ferramentas para exibir a caixa de ferramentas e adicione dois botões e uma caixa de listagem ao Form1.
  4. Em seqüência, clique duas vezes em Button1 , Button2 e Form1 .
  5. Na janela código, substitua o código a seguir
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)                                                                Handles Button1.ClickEnd SubPrivate Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)                                                                Handles Button2.ClickEnd SubPrivate Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)                                                               Handles MyBase.LoadEnd Sub					
    com:
        Private m_oConnectionPoint As UCOMIConnectionPoint    Private m_Cookie As Integer    Private oPPT As PowerPoint.Application    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)                                                                    Handles MyBase.Load        ' Create a new instance of PowerPoint.        oPPT = New PowerPoint.Application()        ' Show PowerPoint to the user.        oPPT.Visible = Microsoft.Office.Core.MsoTriState.msoTrue    End Sub    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)                                                                    Handles Button2.Click        ' Call Unadvise to remove the sink to the connection.        m_oConnectionPoint.Unadvise(m_Cookie)        System.Runtime.InteropServices.Marshal.ReleaseComObject(oPPT)        GC.Collect()    End Sub    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)                                                                    Handles Button1.Click        Dim oConnPointContainer As UCOMIConnectionPointContainer        ' QI for IConnectionPointContainer.        oConnPointContainer = CType(oPPT, UCOMIConnectionPointContainer)        ' Create a new variable that contains the GUID of the         ' PowerPoint.EApplication interface.        Dim guid As New Guid("914934C2-5A91-11CF-8700-00AA0060263B")        ' Find the connection point.        oConnPointContainer.FindConnectionPoint(guid, m_oConnectionPoint)        ' Call Advise to sink up the connection.        m_oConnectionPoint.Advise(Me, m_Cookie)    End Sub    <DispId(2001)> Public Sub WindowSelectionChange(ByVal Sel As PowerPoint.Selection)        Me.ListBox1.Items.Add("WindowSelectionChange")    End Sub    <DispId(2002)> Public Sub WindowBeforeRightClick(ByVal Sel As PowerPoint.Selection,                                                               ByVal Cancel As Boolean)        Me.ListBox1.Items.Add("WindowBeforeRightClick")    End Sub    <DispId(2003)> Public Sub WindowBeforeDoubleClick(ByVal Sel As PowerPoint.Selection,                                                                ByVal Cancel As Boolean)        Me.ListBox1.Items.Add("WindowBeforeDoubleClick")    End Sub    <DispId(2004)> Public Sub PresentationClose(ByVal Pres As PowerPoint.Presentation)        Me.ListBox1.Items.Add("PresentationClose")    End Sub    <DispId(2005)> Public Sub PresentationSave(ByVal Pres As PowerPoint.Presentation)        Me.ListBox1.Items.Add("PresentationSave")    End Sub    <DispId(2006)> Public Sub PresentationOpen(ByVal Pres As PowerPoint.Presentation)        Me.ListBox1.Items.Add("PresentationOpen")    End Sub    <DispId(2007)> Public Sub NewPresentation(ByVal Pres As PowerPoint.Presentation)        Me.ListBox1.Items.Add("NewPresentation")    End Sub    <DispId(2008)> Public Sub PresentationNewSlide(ByVal Sld As PowerPoint.Slide)        Me.ListBox1.Items.Add("PresentationNewSlide")    End Sub    <DispId(2009)> Public Sub WindowActivate(ByVal Pres As PowerPoint.Presentation,                                             ByVal Wn As PowerPoint.DocumentWindow)        Me.ListBox1.Items.Add("WindowActivate")    End Sub    <DispId(2010)> Public Sub WindowDeactivate(ByVal Pres As PowerPoint.Presentation,                                               ByVal Wn As PowerPoint.DocumentWindow)        Me.ListBox1.Items.Add("WindowDeactivate")    End Sub    <DispId(2011)> Public Sub SlideShowBegin(ByVal Wn As PowerPoint.SlideShowWindow)        Me.ListBox1.Items.Add("SlideShowBegin")    End Sub    <DispId(2012)> Public Sub SlideShowNextBuild(ByVal Wn As PowerPoint.SlideShowWindow)        Me.ListBox1.Items.Add("SlideShowNextBuild")    End Sub    <DispId(2013)> Public Sub SlideShowNextSlide(ByVal Wn As PowerPoint.SlideShowWindow)        Me.ListBox1.Items.Add("SlideShowNextSlide")    End Sub    <DispId(2014)> Public Sub SlideShowEnd(ByVal Pres As PowerPoint.Presentation)        Me.ListBox1.Items.Add("SlideShowEnd")    End Sub    <DispId(2015)> Public Sub PresentationPrint(ByVal Pres As PowerPoint.Presentation)        Me.ListBox1.Items.Add("PresentationPrint")    End Sub    <DispId(2016)> Public Sub SlideSelectionChanged(ByVal SldRange As PowerPoint.SlideRange)        Me.ListBox1.Items.Add("SlideSelectionChanged")    End Sub    <DispId(2017)> Public Sub ColorSchemeChanged(ByVal SldRange As PowerPoint.SlideRange)        Me.ListBox1.Items.Add("ColorSchemeChanged")    End Sub    <DispId(2018)> Public Sub PresentationBeforeSave(ByVal Pres As PowerPoint.Presentation,                                                                   ByVal Cancel As Boolean)        Me.ListBox1.Items.Add("PresentationBeforeSave")    End Sub    <DispId(2019)> Public Sub SlideShowNextClick(ByVal Wn As PowerPoint.SlideShowWindow,                                                     ByVal nEffect As PowerPoint.Effect)        Me.ListBox1.Items.Add("SlideShowNextClick")    End Sub					
  6. Adicione o seguinte à seção Imports na parte superior da janela de código:
    Imports System.Runtime.InteropServices Imports Microsoft.Office.Interop					
  7. Teste o programa. Para fazer isso, execute as seguintes etapas:
    1. Pressione F5 para compilar e executar o programa. PowerPoint for iniciado.
    2. Clique em Button1 para configurar os receptores de evento.
    3. Crie uma nova apresentação no PowerPoint.

      O WindowActivate , NewPresentation , PresentationNewSlide e WindowSelectionChange eventos acionam.
    4. Salve a apresentação.

      O evento PresentationSave é acionado.
    5. Feche a apresentação.

      O evento PresentationClose é acionado.
    6. Ative Form1 no programa. Os eventos que foram disparados pelo PowerPoint e manipulados pelo programa aparecem na caixa lista.
    7. Clique em Button2 para desconectar receptores de evento.
    8. Feche Formulário1 .
Referências
Para obter informações adicionais, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
254009INFO: PowerPoint 2000 eventos demonstração disponível para download
Para obter mais informações sobre automação do Office, consulte o seguinte site Suporte Microsoft Office Development:
Perguntas freqüentes e destaques para o desenvolvimento do Office
http://support.microsoft.com/ofd
conexão de ponto de energia do PowerPoint vb evento net

Aviso: este artigo foi traduzido automaticamente

Propriedades

ID do Artigo: 308330 - Última Revisão: 10/24/2013 07:42:49 - Revisão: 4.3

Microsoft PowerPoint 2002 Standard Edition, Microsoft Visual Basic .NET 2002 Standard Edition

  • kbnosurvey kbarchive kbmt kbautomation kbhowto KB308330 KbMtpt
Comentários