WebBrowser1 播放ppt  ppt自动播放下一页,
我的ppt建的时候是没有设置自己切换的。
我用WebBrowser1 播放ppt  ppt自动播放下一页,应该怎么弄呢?

解决方案 »

  1.   

    通過timer設定時間間隔,然后在事件寫如下代碼:
    PPtP.SlideShowWindow.View.Next; //下一張
      

  2.   

    在WebBrowser1 显示ppt就一行代码
    在btn1里写这一句就点击btn1就可以显示了。
    如果ppt建的时候设置了自己换页,它也能自己换页,
    但客户使用的ppt都没有有的没有设置自己换页
    WebBrowser1.Navigate('d:\ppt\apple.ppt');
    所有我想能在程序中设置它自己换页
      

  3.   

    通過WebBrowser1的documentcomplete事件,獲取WebBrowser1的document屬性返回的對象,此時的對象就是ppt。
    在此事件寫如下代碼:
    var
      Pr:_Presentation
    begin
      pr := Document as _Presentation;
      Pr.SlideShowSettings.Run;   
      Pr.SlideShowWindow.View.Next; 
    end;此代碼未經驗證,你試看看
      

  4.   

    程序運行不過啊,
    錯誤信息:沒有定義 _Presentation 
      

  5.   

    好像下面還有一條錯誤信息
    沒有定義 Document 
    我把你給的代碼就寫在
    wb1DocumentComplete事件里
      

  6.   

    請uses OleServer, MSPpt8;
    代碼完善如下:var 
      Pr:_Presentation 
    begin 
      pr := WebBrowser.Document as _Presentation; 
      Pr.SlideShowSettings.Run;  
      Pr.SlideShowWindow.View.Next; 
    end; 
      

  7.   

    可以了。、
    但問題又出來了。
    ppt播放速度太快了。
    才30s就把10頁的ppt全都顯示完了。
    而且,我想讓它循環的播放,
    不想它播完了就黑屏。
      

  8.   

    1、你把timer時間間隔設長一點;
    2、Pr.SlideShowSettings.LoopUntilStopped := msoTrue;即可達到循環播放
      

  9.   

    你是說在timer調用webbrowerDocumentComplete事件。
    之前我沒在timer調用事件也可以。
    不過你說要在time你們調用這個事件我等下就改改。我剛剛加了你說的Pr.SlideShowSettings.LoopUntilStopped := msoTrue;即可達到循環播放
    加了后
    就老彈出一個提示框‘這個文件已經修改過,要存儲變更嗎’。而且關了又有。
    都不知道怎么弄~
      

  10.   

    Pr.SlideShowSettings有個時間間隔設定SlideElapsedTime。可以不用timer。
    至于循環的話,除了設定Pr.SlideShowSettings.LoopUntilStopped := msoTrue,也可以采用timer來控制——如果到最后一頁了則跳到第一頁 first。關于彈出提示框問題,可能跟你的代碼有關系。
      

  11.   

    单击桌面左下角的开始按钮,选择运行;然后输入:regsvr32 hlink.dll 点确定就OK了。如果系统里没有hlink.dll,就从别人同系统机器中复制一下过来