应用思考-教育技术论坛

标题: 用VB代码实现PPT课件的交互功能 [打印本页]

作者: etthink    时间: 2008-11-28 19:07
标题: 用VB代码实现PPT课件的交互功能
本文介绍如何使用 Microsoft Visual Basic 使 Microsoft PowerPoint 在 Microsoft Office2003、Microsoft Office XP Developer 和 Microsoft Office 2000 Developer中自动运行。
    通过使用 PowerPoint 中的自动运行功能,您可以以编程方式打印、显示幻灯片及执行以交互式执行的大多数事情。按照以下步骤构建并运行一个 Visual Basic 自动运行示例:

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub Command1_Click()
    ' Start PowerPoint.
    Dim ppApp As PowerPoint.Application
    Set ppApp = CreateObject("Powerpoint.Application")

    ' Make it visible.
    ppApp.Visible = True

    ' Add a new presentation.
    Dim ppPres As PowerPoint.Presentation
    Set ppPres = ppApp.Presentations.Add(msoTrue)

    ' Add a new slide.
    Dim ppSlide1 As PowerPoint.Slide
    Set ppSlide1 = ppPres.Slides.Add(1, ppLayoutText)

    ' Add some text.
    ppSlide1.Shapes(1).TextFrame.TextRange.Text = "My first slide"
    ppSlide1.Shapes(2).TextFrame.TextRange.Text = "Automating Powerpoint is easy" & vbCr & "Using Visual Basic is fun!"

    ' Add another slide, with a chart.
    Dim ppSlide2 As PowerPoint.Slide
    Set ppSlide2 = ppPres.Slides.Add(2, ppLayoutTextAndChart)
   
    ' Add some text.
    ppSlide2.Shapes(1).TextFrame.TextRange.Text = "Slide 2's topic"
    ppSlide2.Shapes(2).TextFrame.TextRange.Text = "You can create and use charts in your Powerpoint slides!"

    ' Add a chart in the same location as the old one.
    Dim cTop As Double
    Dim cWidth As Double
    Dim cHeight As Double
    Dim cLeft As Double
    With ppSlide2.Shapes(3)
        cTop = .Top
        cWidth = .Width
        cHeight = .Height
        cLeft = .Left
        .Delete
    End With
    ppSlide2.Shapes.AddOLEObject cLeft, cTop, cWidth, cHeight, "MSGraph.Chart"

    ' Add another slide, with an organization chart.
    Dim ppSlide3 As PowerPoint.Slide
    Set ppSlide3 = ppPres.Slides.Add(3, ppLayoutOrgchart)

    ' Add some text.

    ppSlide3.Shapes(1).TextFrame.TextRange.Text = "The rest is only limited by your Imagination"

    ' Add an Org Chart in the same location as the old one.
    With ppSlide3.Shapes(2)
        cTop = .Top
        cWidth = .Width
        cHeight = .Height
        cLeft = .Left
        .Delete
    End With
    ppSlide3.Shapes.AddOLEObject cLeft, cTop, cWidth, cHeight, "OrgPlusWOPX.4" 'OrgPlusWOPX.4
    ' is an object of the application Microsoft Organization Chart


    ' Setup slide show properties.
    With ppPres.Slides.Range.SlideShowTransition
        .EntryEffect = ppEffectRandom
        .AdvanceOnTime = msoTrue
        .AdvanceTime = 5 ' 5 seconds per slide
    End With

    ' Prepare and run the slide show.
    With ppPres.SlideShowSettings
        .ShowType = ppShowTypeKiosk
        .LoopUntilStopped = msoTrue

        .RangeType = ppShowAll
        .AdvanceMode = ppSlideShowUseSlideTimings
        .Run
    End With

    ' Sleep so user can watch the show.
    Sleep (15000)

    ' Clean up.
    ppApp.Quit

End Sub
                                       
运行该项目。




欢迎光临 应用思考-教育技术论坛 (http://etthink.com/) Powered by Discuz! X3.4