最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

如何使用C#操作幻燈片

 更新時間:2022年05月06日 15:07:14   作者:LearningHard  
一般大家經(jīng)常會用PPT遙控翻頁筆來遙控幻燈片,本文確為大家介紹了使用C#制作一個遙控幻燈片,感興趣的朋友可以參考下

記得老師講課的時候,經(jīng)常會用PPT遙控翻頁筆來遙控幻燈片來給我們講課,當時覺得非常有趣,由于這段時間接觸了VSTO相關的開發(fā),了解到了Office的相關產(chǎn)品都公開了一些API來讓我們對Office產(chǎn)品進行二次開發(fā),這時候我就想,能不能用PowerPoint公開的對象來制作一個遙控幻燈片的程序呢?在本專題就向大家介紹下這個小工具的實現(xiàn)思路和效果。

實現(xiàn)思路

1、既然要實現(xiàn)的程序是遙控幻燈片,這樣我們就需要先獲得幻燈片應用程序的,在PowerPoint對象模型中,Microsoft.Office.Interop.PowerPoint.Application代表Powerpoint應用程序,這點和Word、Excel和Outlook都是一樣的。
2、獲得了幻燈片應用程序對象之后,之后我們就需要獲得幻燈片對象,因為我們遙控的是幻燈片,在PowerPoint對象模型中也提供了幻燈片對象,即Microsoft.Office.Interop.PowerPoint.Slide。由于幻燈片又是存在于演示文稿中的,所以我們要想獲得幻燈片對象,就需要先獲得演示文稿對象,Microsoft.Office.Interop.PowerPoint.Presentation 就是代表演示文稿對象。
3、獲得幻燈片對象之后,我們就可以利用幻燈片對象的Select方法來進行幻燈片的切換,然而在閱讀模式的情況下,不能用Select方法來進行翻頁,此時需要另一種方式來實現(xiàn),即調用 Microsoft.Office.Interop.PowerPoint.SlideShowView對象的First,Next,Last,Previous方法來進行幻燈片翻頁

下面一張是閱讀模式下程序中實現(xiàn)翻頁功能與在幻燈片中的對應關系:

遙控幻燈片程序的實現(xiàn)

有了上面的解釋,我們再看下面的實現(xiàn)代碼時,相信大家肯定不會覺得有任何難道了,下面就直接貼出部分的實現(xiàn)的代碼

/// <summary>
/// 檢查是否打開幻燈片程序
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
privatevoid btnCheck_Click(object sender, EventArgs e) 
{ 
// 必須先運行幻燈片,下面才能獲得PowerPoint應用程序,否則會出現(xiàn)異常
// 獲得正在運行的PowerPoint應用程序
try
  { 
    pptApplication = Marshal.GetActiveObject("PowerPoint.Application") as PPt.Application; 
// 成功獲取了PowerPoint程序時,使UI按鈕可用
this.btnFirst.Enabled = true; 
this.btnNext.Enabled = true; 
this.btnPrev.Enabled = true; 
this.btnLast.Enabled = true; 
  } 
catch
  { 
    MessageBox.Show("請先啟動遙控的幻燈片", "Error", MessageBoxButtons.OKCancel, MessageBoxIcon.Error); 
  } 
if (pptApplication != null) 
  { 
//獲得演示文稿對象
    presentation = pptApplication.ActivePresentation; 
// 獲得幻燈片對象集合
    slides = presentation.Slides; 
// 獲得幻燈片的數(shù)量
    slidescount = slides.Count; 
// 獲得當前選中的幻燈片
try
    { 
// 在普通視圖下這種方式可以獲得當前選中的幻燈片對象
// 然而在閱讀模式下,這種方式會出現(xiàn)異常
      slide = slides[pptApplication.ActiveWindow.Selection.SlideRange.SlideNumber]; 
    } 
catch
    { 
// 在閱讀模式下出現(xiàn)異常時,通過下面的方式來獲得當前選中的幻燈片對象
      slide = pptApplication.SlideShowWindows[1].View.Slide; 
    } 
  } 
} 
// 第一頁事件
privatevoid btnFirst_Click(object sender, EventArgs e) 
{     
try
  { 
// 在普通視圖中調用Select方法來選中第一張幻燈片
    slides[1].Select();     
    slide = slides[1]; 
  } 
catch
  { 
// 在閱讀模式下使用下面的方式來切換到第一張幻燈片
    pptApplication.SlideShowWindows[1].View.First(); 
    slide = pptApplication.SlideShowWindows[1].View.Slide; 
  } 
} 

下面就看看該遙控程序的運行效果是如何的:

小結

到這里本專題的介紹就結束了,其實本程序最好是放在手機客戶端,這樣我們就可以利用手機來對我們的幻燈片進行翻頁了,這樣就和激光筆的效果就是一樣的了,這里就給大家先提供一個思路吧,我相信如果要在手機客戶端實現(xiàn)的話,肯定就需要藍牙編程的技術或者WiFi編程的技術來獲取筆記本電腦的幻燈片應用程序,只要我們成功在手機客戶端獲取了PowerPoint應用程序對象的話,后面的實現(xiàn)過程就和本程序的實現(xiàn)方式就基本一樣的,然而我們同時打開筆記本的藍牙和手機的藍牙(也可以利用WiFi),這樣我們就可以輕松實現(xiàn)用手機來遙控我們演講文稿了。

以上就是本文給大家分享的使用C#制作幻燈片的全過程,希望大家可以喜歡。

相關文章

  • C#窗體間常用的幾種傳值方式及委托與事件詳解

    C#窗體間常用的幾種傳值方式及委托與事件詳解

    這篇文章主要給大家介紹了關于C#窗體間常用的幾種傳值方式及委托與事件的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用小程序具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-06-06
  • C#多線程學習之(二)操縱一個線程的方法

    C#多線程學習之(二)操縱一個線程的方法

    這篇文章主要介紹了C#多線程學習之操縱一個線程的方法,實例分析了C#中線程的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-04-04
  • C#常用排序方式總結

    C#常用排序方式總結

    在最近的項目中經(jīng)常會對C#中的數(shù)據(jù)進行排序,對于基本數(shù)據(jù)類型,其排序方式比較簡單,只需要調用內(nèi)置算法即可實現(xiàn),但對于自定義數(shù)據(jù)類型以及自定義排序規(guī)則的情況實現(xiàn)起來就比較麻煩,所以在本文章中將詳細介紹一下在中C#中如何對數(shù)據(jù)進行排序,需要的朋友可以參考下
    2024-01-01
  • Unity3D生成一段隧道網(wǎng)格的方法

    Unity3D生成一段隧道網(wǎng)格的方法

    這篇文章主要為大家詳細介紹了Unity3D生成一段隧道網(wǎng)格的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • C#實現(xiàn)將Doc文檔轉換成rtf格式的方法示例

    C#實現(xiàn)將Doc文檔轉換成rtf格式的方法示例

    這篇文章主要介紹了C#實現(xiàn)將Doc文檔轉換成rtf格式的方法,結合實例形式分析了C#針對word文件的讀取及文檔格式轉換相關操作技巧,需要的朋友可以參考下
    2017-07-07
  • C#版Windows服務安裝卸載小工具

    C#版Windows服務安裝卸載小工具

    這篇文章主要為大家推薦了一款C#版Windows服務安裝卸載小工具,小巧靈活的控制臺程序,希望大家喜歡,感興趣的小伙伴們可以參考一下
    2016-07-07
  • C#實現(xiàn)冒泡排序算法的代碼示例

    C#實現(xiàn)冒泡排序算法的代碼示例

    冒泡排序即是對數(shù)組每次輪循出最大數(shù)或最小數(shù)放在隊尾,這里我們來看一下C#實現(xiàn)冒泡排序算法的代碼示例,需要的朋友可以參考下
    2016-07-07
  • C#值類型、引用類型中的Equals和==的區(qū)別淺析

    C#值類型、引用類型中的Equals和==的區(qū)別淺析

    這篇文章主要介紹了C#值類型、引用類型中的Equals和==的區(qū)別淺析,本文分別對C#值類型和引用類型中的Equals和==做了講解和給出了實例,需要的朋友可以參考下
    2015-01-01
  • C#強制轉換和嘗試轉換的方法

    C#強制轉換和嘗試轉換的方法

    這篇文章主要為大家詳細介紹了C#強制轉換和嘗試轉換的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-09-09
  • c#的params參數(shù)使用示例

    c#的params參數(shù)使用示例

    這篇文章主要介紹了c#的params參數(shù)使用示例,需要的朋友可以參考下
    2014-04-04

最新評論

南郑县| 台江县| 邵阳市| 荃湾区| 渭南市| 辽宁省| 玉田县| 平顶山市| 始兴县| 长兴县| 台北市| 竹山县| 满洲里市| 应城市| 会东县| 广平县| 大安市| 吉安县| 嵩明县| 巍山| 金门县| 聊城市| 昆明市| 仲巴县| 仲巴县| 红原县| 阳西县| 遂川县| 民权县| 达州市| 长泰县| 教育| 云龙县| 濮阳市| 托里县| 大悟县| 凌海市| 罗源县| 航空| 广灵县| 边坝县|