999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于VSTO技術的Office計時器插件的設計與實現

2016-09-26 02:16:14張未未吳宇峰劉仁權北京中醫藥大學信息中心北京0009北京中醫藥大學教務處北京0009
電子設計工程 2016年11期
關鍵詞:設置

張未未,吳宇峰,劉仁權,王 蘋(.北京中醫藥大學 信息中心,北京 0009;.北京中醫藥大學 教務處,北京 0009)

基于VSTO技術的Office計時器插件的設計與實現

張未未1,吳宇峰2,劉仁權1,王 蘋1
(1.北京中醫藥大學 信息中心,北京100029;2.北京中醫藥大學 教務處,北京100029)

計時器被廣泛應用于演講比賽和答辯陳述等需要限時完成的多種場合。針對實際應用中計時器只能起到計時作用,而無法真正干預到演講者演講超時行為的問題,文章介紹了基于VSTO技術的Office計時器插件的設計與實現方法。該計時器插件在演講者無意或因其他操作需退出幻燈片放映狀態時,仍可繼續計時,從而保證整個演講過程計時的連續性。同時,還可以通過計時結束時強制退出幻燈片放映狀態或關閉演示文稿等手段對超時情況進行干預,從技術層面保證行為與時效的一致統一,經實踐證明該插件使用效果良好。

VSTO;計時器;插件;PowerPoint;Visual Studio

計時器被廣泛應用于演講比賽和答辯陳述等需要限時完成的多種場合。但實際應用中經常會出現計時結束但演講者還在滔滔不絕繼續陳述,以致現場評委不得不再三提醒的場景。這種情況既違反了演講或答辯的規則,又會影響到后續環節的準時進行,往往造成活動時間處于不可控的局面。而計時器也并沒有真正起到時間限制的作用。從目前市場上已有的計時器產品來看,無論是專用計時器設備,還是計時器應用軟件,都只能起到時間計量和到時提示的功能,而不能以某種措施真正干預到演講者演講超時的行為,從而導致一方面組織者要為購買計時器設備或軟件花費經費,但另一方面又要為怎么控制時間而另想辦法的尷尬局面。基于此,文中根據用戶需求,并結合目前多數演講比賽和答辯陳述環節都要求使用幻燈片作為演示工具的特點,介紹了一種全新的Office計時器插件的設計與實現方法,很好的解決了已有計時器只計時而不能真正實現時間控制的功能局限,而且通過實際使用證明效果良好。

1 計時器插件功能描述及工作流程

1.1功能描述

根據對用戶的使用需求分析,文中所介紹的計時器工具是以Office插件形式實現的,嵌入于PowerPoint軟件之中,并具有如下功能:

1)幻燈片開始放映,倒計時開始,顯示計時時間;

2)倒計時結束前某一時刻進行提示,以提醒演講者注意控制時間;

3)倒計時結束伴有語音提示;

4)可設置倒計時結束時退出幻燈片放映狀態或者關閉當前演示文稿;

5)可設置演講者在演講過程中退出幻燈片放映狀態而進行其他計算機操作時,時間倒計時繼續;

6)不需要倒計時操作時,可關閉該Office插件功能。

1.2工作流程

根據以上功能描述,計時器插件工作流程如圖1所示。

圖1 計時器插件工作流程

1)當幻燈片開始放映時,表示演講正式開始,計時器啟動,倒計時開始;

2)當時間到達設定好的提示時間時,將發出提示音,提醒演講者注意距離結束所剩余的時間;

3)當倒計時時間到時,將發出提示音,提示演講者倒計時結束;

4)倒計時結束后可根據軟件設置決定是否允許演講者繼續放映演示文稿余下內容、還是退出放映狀態以及關閉當前演示文稿等操作。

2 VSTO技術簡介

VSTO(Visual Studio Tools for the Microsoft Office System)是一種高效可靠的實現智能文檔的技術,是微軟提出的內嵌于Microsoft Visual Studio.NET產品的解決方案,可以說是VBA技術的.NET平臺化[1]。開發者可以使用強大的Visual Studio開發環境來創建定制程序,相對于使用VBA或Office里的Visual Basic Editor(VBE),VSTO技術具有以下明顯優勢[2]:

1)開發人員不但可以使用各種控件,包括WinForm托管控件和VSTO宿主控件,而且可以利用Visual Studio為這些控件提供的豐富功能來提高工作效率。

2)支持各種托管代碼,如VB.NET、Visual C#等,這樣開發人員就可以充分利用VB或C#的經驗進行開發,從而易于上手掌握。

3)NET Framework類庫和公共語言運行庫(CLR)對VSTO提供了全面地支持,例如可以使用 ADO.NET訪問數據庫、支持 XML Web Services多層結構解決方案的開發等。

4)集成了.NET Framework提供的安全功能,另外,在VSTO環境中編程時,其代碼是包含在該項目所生成的程序集中的,且編寫的是托管代碼,與托管代碼一起提供的公共語言運行庫會對代碼進行驗證,從而避免執行非法操作[3]。

3 計時器插件的開發與實現

3.1PowerPoint外接程序的創建

VSTO在Visual Studio.NET的開發環境中提供了一套Office Projects項目模板,使用這些模板可以創建以Office文檔(例如Word、Excel、PowerPoint、InfoPath、Visio和Outlook)為中心的解決方案[4]。用戶可根據需要,利用VSTO創建文檔級別或應用程序級別的定制程序。文檔級別的定制程序是指程序代碼僅關聯到特定的文檔而不是整個應用程序,應用程序級的定制程序則對整個應用程序都是可用的[5]。本文所介紹的計時器插件是對于PowerPoint整個軟件可用的,因此需創建應用程序級別的定制程序。

在Visual Studio 2010中可以依次點擊“文件”→“新建項目”展開Office模板,然后從模板中選擇“PowerPoint 2010外接程序”來完成針對PowerPoint 2010的應用程序級別插件的項目創建。項目建立后,Visual Studio會為用戶自動引入必要的程序集,并創建ThisAddIn.vb(本文選取VB.net作為開發語言)文件,該文件將會創建一個外接程序的入口類ThisAddIn,即PowerPoint宿主項。可以通過此類對PowerPoint對象進行訪問。同時,該類中有 ThisAddIn_Startup和 ThisAddIn_ Shutdown兩個方法,用于放置外接程序加載或卸載時要執行的代碼[6]。

3.2用戶界面設計

計時器插件的用戶界面包括功能區(Ribbon)倒計時器選項卡界面和計時器窗口兩個。

3.2.1計時器選項卡設計

Visual Studio 2010為用戶提供了功能區選項卡的可視化設計器,用戶可以通過從工具箱中拖拽控件來實現功能區的設計,并且可以通過在可視化設計器的控件上雙擊鼠標來為控件添加事件響應程序[7]。計時器插件的選項卡控制界面設計如圖2所示。

圖2 計時器插件的選項卡控制界面

1)時間設置:表示倒計時的時長。

2)距計時結束提示音:勾選此項后,將可以設置倒計時結束前的提示時間,并伴有提示音。如不勾選此項,則提示時間功能關閉。

3)退出放映繼續計時:勾選此項后,則當演講者在演講過程中無意或因其他操作需退出幻燈片放映狀態時,計時仍將繼續,以保證整個演講過程計時的連續性。勾選此項后,“到時關閉PPT”選項也會被自動選中,表示此情況發生時,如計時結束將會關閉當前演示文稿,以提示用戶時間已到,演講停止。

4)到時設置:“到時退出放映”表示計時結束時將自動退出幻燈片放映狀態,以提示用戶時間已到,演講停止;“到時關閉PPT”表示計時結束時將自動關閉當前演示文稿,以提示用戶時間已到,演講停止。此兩選項可依據情況分別勾選或同時勾選。

5)計時器插件開關按鈕:此按鈕可以控制計時器插件是否在幻燈片放映時開始工作。

3.2.2計時器窗口設計

計時器窗口界面如圖3所示。該窗口為普通Windows窗體,作為倒計時過程時間的顯示界面,并且可以暫停計時。當幻燈片放映開始時,該窗口會自動彈出,并依據所設定時間開始倒計時。

圖3 計時器窗口界面

3.3主要模塊功能及實現代碼

該計時器插件涉及代碼模塊主要包括:Ribbon1.vb、Form1.vb和ThisAddIn.vb。

3.3.1Ribbon1.vb模塊功能

Ribbon1.vb模塊用以實現圖2所示倒計時器選項卡界面功能,包括各控件初始狀態的設置、時間輸入值的有效性檢驗及獲取、控件事件響應操作等,代碼略。

3.3.2Form1.vb模塊功能及主要實現代碼

Form1.vb模塊用以實現圖3所示計時器窗口的時間顯示和“繼續/暫停”功能。窗體加載時的初始化設置代碼如下:

Private Sub Form1_Load(ByVal sender As System.Object,ByVal e As System.EventArgs)Handles MyBase.Load

……

Me.minute_s.Text=Time_m10'設置窗體顯示的倒計時時間—分十位

Me.minute_g.Text=Time_m Mod 10'設置窗體顯示的倒計時時間—分個位

Me.second_s.Text=Time_s10'設置窗體顯示的倒計時時間—秒十位

Me.second_g.Text=Time_s Mod 10'設置窗體顯示的倒計時時間—秒個位

Time_total=Time_m*60+Time_s'將設置的倒計時時間換算成以秒為單位的數值

TimeTx_total=TimeTx_m*60+TimeTx_s'將設置的提醒時間換算成以秒為單位的數值

Time_yz=0'已走過時間清零

Timer1.Interval=1000'設置計時器控件觸發時間間隔為1000毫秒

Timer1.Enabled=True'計時器控件開始工作

End Sub

Form1.vb模塊中添加了計時器控件,通過初始化設置使該控件每隔1 s自動觸發執行一次Tick事件,以此來進行時間顯示數值的變化,模擬時間倒計時走動過程。Tick事件主要代碼如下:

Time_sy=Time_total-Time_yz'計算剩余時間

'下列代碼設置窗體中顯示出的剩余時間

'下列代碼實現當剩余時間達到提示時間,并且已經勾選“距計時結束提示音”復選框,則播放提示音

If Time_sy=TimeTx_total And Globals.Ribbons.Ribbo-n1. CheckBox4.Checked=True Then

……'播放提示音

'下列代碼實現當倒計時還剩4秒時,窗體中時間文本框中的數字開始顏色閃爍

……'數字顏色變為黃色

……'數字顏色變為紅色

Timer1.Enabled=False'倒計時結束關閉計時器控件

If Globals.Ribbons.Ribbon1.CheckBox2.Checked=True Then'判斷是否勾選“到時關閉PPT”復選框Close()'關閉當前演示文稿

ElseIf Globals.Ribbons.Ribbon1.CheckBox1.Checked= True Then'判斷是否勾選“到時退出放映狀態”復選框

Globals.ThisAddIn.Application.Active Presentation. SlideShowWindow.View.Exit()'退出幻燈片放映狀態

End If

MsgBox("時間到",MsgBoxStyle.Information,"時間提示")'彈出“時間到”提示對話框

End If End Sub

3.3.3ThisAddIn.vb模塊功能及主要實現代碼

ThisAddIn.vb模塊用以實現幻燈片開始放映和退出放映等事件觸發時要執行的操作。主要實現代碼如下:

'下列代碼實現當幻燈片開始放映時,啟動計時器窗口開始倒計時

'以下代碼實現退出放映狀態時,如果時間已到或“退出放映繼續計時”復選框沒有勾選時,關閉倒計時窗口;否則繼續倒計時。

3.4計時器插件的發布與安裝

基于VSTO技術創建的PowerPoint 2010外接程序可以使用Visual studio 2010自帶的發布程序進行打包發布[8]。安裝時,雙擊發布后的安裝包,按提示進行安裝即可。安裝成功后啟動PowerPoint 2010軟件,計時器插件會自動完成加載,如圖4所示。

圖4 插件安裝后PowerPoint 2010的啟動界面

4 計時器插件的實際使用效果

計時器插件安裝成功后,單擊“開/關”按鈕,打開計時器,并設置好倒計時時間。當幻燈片開始放映時,計時窗口會自動彈出,并開始倒計時,如圖5所示。

如果勾選了“退出放映繼續計時”復選框,則當退出幻燈片放映狀態時,倒計時仍然繼續。如圖6所示。

圖5 幻燈片放映狀態下工作的計時器

圖6 退出幻燈片放映狀態繼續工作的計時器

當倒計時結束時,演示文稿將被關閉,并彈出“時間到”提示對話框,如圖7所示。

圖7 "時間到"提示對話框

通過真實演講比賽和答辯陳述現場測試,該計時器插件計時準確可靠,并能以強制退出幻燈片放映狀態或關閉演示文稿等技術手段對超時情況進行干預,使用效果良好。

5 結 論

文中介紹了基于VSTO技術的Office計時器插件的設計與實現方法。該插件可以在演講者放映幻燈片時開始啟動計時,而且在演講者無意或因其他操作需退出幻燈片放映狀態時,仍可繼續計時,從而保證整個演講過程計時的連續性。同時,還可以通過計時結束時強制退出幻燈片放映狀態或關閉演示文稿等手段對超時情況進行干預,從技術層面保證行為與時效的一致統一,經實踐證明該插件使用效果良好。

[1]王海波,王兆華.Excel查找擴展組件SearchPro4Excel的開發和應用[J].計算機與現代化,2013(1):137-140.

[2]張印.基于VSTO的高校畢業論文格式化處理軟件的設計與實現[D].北京:北京郵電大學,2012.

[3]朱正杰,鄭暉,羅洋洋.基于VSTO的開發區土地集約利用評價工具設計與開發[J].安徽農業科學,2015(13):313-316.

[4]甄艷玲,孫智勇.基于繼續教育的計算機考試系統的設計與實現[J].計算機與現代化,2012(11):119-122.

[5]韓立杰.基于VSTO的Office評分系統研究 [D].石家莊:河北科技大學,2010.

[6]魯琴,羅武勝,趙夢偉.基于VSTO技術和安卓手機的高校互動反饋教學系統設計[J].中國教育技術裝備,2014(12): 26-28.

[7]顧晟.基于VSTO的智能文檔在企業環保信息調查系統中的應用[J].計算機系統應用,2010,19(1):114-118.

[8]史兆彥,戴長華,周巖.基于VSTO技術的船岸同步軟件的設計與實現[J].上海船舶運輸科學研究所學報,2014,37 (3):37-43.

The design and implementation of Office timer plug-in based on VSTO technology

ZHANG Wei-wei1,WU Yu-feng2,LIU Ren-quan1,WANG Ping1
(1.Information Center,Beijing University of Chinese Medicine,Beijing 100029,China;2.Academic Affairs Office,Beijing University of Chinese Medicine,Beijing 100029,China)

The timer is widely used in the speech contest,defense statement and other occasions that needing for a limited time to complete.In view of the actual application that the timer can only play a role of timing,and cannot really interfere with the speaker’s speech timeout behaviors,this paper introduces the design and implementation methods of Office timer plug-in based on VSTO technology.This timer plug-in,when the speaker accidentally or because of other operations needs to exit the slide show state,can still continue to time,so as to ensure the continuity of the whole speech process.At the same time,it can also be used to intervene in the timeout by forced exiting slide show state and closing the presentation,from the technical level to ensure the consistency of the behavior and time,the time plug-in has been proved to be effective by practice.

VSTO;timer;plug-in;PowerPoint;Visual Studio

TN919

A

1674-6236(2016)11-0031-04

2015-10-14稿件編號:201510085

北京市青年英才計劃項目(YETP0820)

張未未(1979—),男,山東萊蕪人,碩士,講師。研究方向:數據庫應用技術、辦公自動化。

猜你喜歡
設置
中隊崗位該如何設置
少先隊活動(2021年4期)2021-07-23 01:46:22
船舶防火結構及設置的缺陷與整改
水上消防(2020年5期)2020-12-14 07:16:18
中外醫學專業與專科設置對比分析及啟示
特殊場景下列控等級轉換的設置方案
7招教你手動設置參數
動車段(所)股道有效長設置研究
我國中小學將設置人工智能相關課程
玩具世界(2017年9期)2017-11-24 05:17:29
吃紙的妖怪
本刊欄目設置說明
中俄臨床醫學專業課程設置的比較與思考
主站蜘蛛池模板: 四虎AV麻豆| 在线观看亚洲精品福利片| 91精品情国产情侣高潮对白蜜| 国产91成人| 亚洲成人一区二区| 中文字幕永久视频| 亚洲一区二区三区中文字幕5566| 亚洲天堂免费| 99re这里只有国产中文精品国产精品 | 免费毛片视频| 91麻豆精品国产高清在线| 伊人查蕉在线观看国产精品| 精品少妇三级亚洲| 亚洲成人精品在线| 久久99国产综合精品1| 色噜噜综合网| 欧美黑人欧美精品刺激| 欧美亚洲欧美| 国产精品自在线拍国产电影 | 欧美日韩免费在线视频| 国产成人精品一区二区三区| 中字无码av在线电影| 无码电影在线观看| 91青青视频| 亚洲成人www| 国产在线观看第二页| 亚洲精品人成网线在线| 欧美视频在线播放观看免费福利资源| 2021国产精品自拍| 精品無碼一區在線觀看 | 激情六月丁香婷婷四房播| 爆乳熟妇一区二区三区| 香蕉视频在线观看www| 一区二区三区四区日韩| 国产特级毛片| 国产精品刺激对白在线| 欧美日韩北条麻妃一区二区| 亚洲综合国产一区二区三区| 91久久国产成人免费观看| 国产综合亚洲欧洲区精品无码| 中文字幕无码电影| 91色在线观看| 一本综合久久| 色噜噜狠狠狠综合曰曰曰| 国产免费自拍视频| 国产精品免费久久久久影院无码| 国产a网站| 91热爆在线| 国产无码精品在线| 五月婷婷综合网| 久久综合色视频| 午夜a视频| 在线观看免费AV网| 国产伦片中文免费观看| 国产精品冒白浆免费视频| 精品国产一区91在线| 亚洲婷婷在线视频| 极品av一区二区| 无码国产偷倩在线播放老年人| 黄色免费在线网址| 亚洲一级毛片免费看| 美女潮喷出白浆在线观看视频| 欧美视频在线第一页| 99久久精品国产麻豆婷婷| 国产日韩精品欧美一区喷| 在线观看91精品国产剧情免费| 亚洲日本中文字幕天堂网| 人妻中文久热无码丝袜| 国产高清不卡| 国产欧美日韩综合在线第一| 试看120秒男女啪啪免费| 久久综合丝袜长腿丝袜| 理论片一区| 成年人国产网站| 无码高清专区| 亚洲天堂视频在线观看免费| 福利一区在线| 欧美激情二区三区| 91成人在线免费视频| 美女国内精品自产拍在线播放| 四虎国产精品永久在线网址| 成人国产精品2021|