• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      利用VBA實(shí)現(xiàn)PowerPoint課件的規(guī)則圖形圈點(diǎn)

      2010-08-15 00:51:49李旭東
      中國現(xiàn)代教育裝備 2010年9期
      關(guān)鍵詞:圈點(diǎn)窗體鼠標(biāo)

      李旭東

      浙江財(cái)經(jīng)學(xué)院 浙江杭州 310018

      利用VBA實(shí)現(xiàn)PowerPoint課件的規(guī)則圖形圈點(diǎn)

      李旭東

      浙江財(cái)經(jīng)學(xué)院 浙江杭州 310018

      教師在利用PowerPoint教學(xué)課件進(jìn)行講課時(shí),經(jīng)常會用到PowerPoint的圈點(diǎn)功能。但是,PowerPoint的圈點(diǎn)功能存在較大的局限和不足,繪圖筆沒有提供如直線、方框、圓圈、橢圓等規(guī)則的圈點(diǎn)圖形,而只提供了涂鴉式畫線的功能。為此,本文利用VBA編程實(shí)現(xiàn)了PowerPoint教學(xué)課件的規(guī)則圖形圈點(diǎn),彌補(bǔ)了PowerPoint只能進(jìn)行涂鴉式畫線圈點(diǎn)的不足。PowerPoint教學(xué)課件規(guī)則圖形圈點(diǎn)的實(shí)現(xiàn),將能較大地提高教師多媒體教學(xué)的工作效率和學(xué)生聽課的效果,從而有助于提高教學(xué)質(zhì)量。

      教學(xué)課件;PowerPoint;圈點(diǎn);規(guī)則圖形;VBA

      隨著計(jì)算機(jī)多媒體技術(shù)、教育信息技術(shù)的發(fā)展與普及,計(jì)算機(jī)輔助多媒體教學(xué)已深入越來越多學(xué)校的教學(xué)體系。其中,多媒體教學(xué)課件是實(shí)現(xiàn)計(jì)算機(jī)輔助多媒體教學(xué)的關(guān)鍵。PowerPoint因簡單易學(xué)、可利用的資源豐富、課件制作和開發(fā)周期短等,使得由其制作和開發(fā)出的演示型課件成為當(dāng)前最為常見的一類多媒體教學(xué)課件。

      教師在利用PowerPoint教學(xué)課件進(jìn)行講課時(shí),為了更好地引導(dǎo)學(xué)生觀看課件、使之跟隨教師的教學(xué)思路和講解內(nèi)容,或?yàn)榱酥刂赋稣n件中的某個事物,往往會使用PowerPoint的圈點(diǎn)功能,即用鍵盤鍵入Ctrl+P或用鼠標(biāo)點(diǎn)擊相應(yīng)的菜單調(diào)出繪圖筆,在課件相應(yīng)的對象下劃線或畫圓圈、橢圓等圈住該對象。PowerPoint的這一圈點(diǎn)功能,對采用PowerPoint課件進(jìn)行課堂教學(xué)的教師來說簡直就是如虎添翼,當(dāng)然也提高了教師的工作效率和教學(xué)質(zhì)量。

      但是,PowerPoint的圈點(diǎn)功能有一個較大的局限和不足:繪圖筆沒有提供如直線、方框、圓圈、橢圓等規(guī)則的圈點(diǎn)圖形,而只提供了涂鴉式畫線的功能。而學(xué)校多媒體教室一般都沒有配置如手寫輸入筆、觸摸屏等輸入設(shè)備,使得PowerPoint課件的圈點(diǎn)往往只能使用鼠標(biāo)來實(shí)現(xiàn)。但使用鼠標(biāo),教師一般很難把線畫直、把圈畫圓。因此,在PowerPoint課件中能用規(guī)則的圖形(直線、方框、圓圈、橢圓等)進(jìn)行圈點(diǎn),成為了教師追求的一大目標(biāo)。

      慶幸的是,雖然PowerPoint沒有提供規(guī)則圖形的圈點(diǎn)功能,但是PowerPoint還有內(nèi)置的VBA編程語言及其相應(yīng)的開發(fā)工具,可以彌補(bǔ)PowerPoint的這一不足,實(shí)現(xiàn)教學(xué)課件的規(guī)則圖形圈點(diǎn)。

      一、規(guī)則圖形圈點(diǎn)的需求分析與總體設(shè)計(jì)

      1.規(guī)則圈點(diǎn)圖形的類型

      根據(jù)實(shí)際多媒體課件教學(xué)的圈點(diǎn)需求,直線、方框、橢圓是必須的最基本的圖形。

      水平的直線和垂直的直線可分別用高度為0和寬度為0的方框來繪制出,這樣,就可以克服直接用直線較難精確繪制水平直線和垂直直線的不足。此外,長軸和短軸的長度相等的特殊橢圓就是一個圓,因此,圓就不需要單獨(dú)作為一種圖形了。

      2.圖形線條的顏色

      為加強(qiáng)圈點(diǎn)的效果,根據(jù)PowerPoint教學(xué)課件里的文字、圖像、公式等內(nèi)容設(shè)置的顏色,我們需要設(shè)置相應(yīng)的圈點(diǎn)圖形的顏色,即需要有紅、黃、藍(lán)、綠、青、紫等多種常見顏色供選擇。

      3.圖形線條的寬度

      同顏色一樣,圈點(diǎn)圖形線條寬度的靈活設(shè)置也可加強(qiáng)圈點(diǎn)的效果,比如,對小的文字設(shè)置細(xì)線條,對大的文字設(shè)置粗線條等。因此,需要提供不同寬度大小的線條供選擇。

      二、規(guī)則圖形圈點(diǎn)的詳細(xì)設(shè)計(jì)與VBA實(shí)現(xiàn)

      本文設(shè)計(jì)與實(shí)現(xiàn)PowerPoint課件規(guī)則圖形圈點(diǎn)的基本思想是:用一個最大化的無標(biāo)題欄、透明的VBA窗體完全覆蓋PowerPoint課件,然后在這個透明窗體對應(yīng)于PowerPoint課件待圈點(diǎn)的位置上繪制規(guī)則圖形。這樣,在效果上就如同直接在PowerPoint課件上進(jìn)行規(guī)則圖形圈點(diǎn)一樣。這個透明的VBA窗體,我們稱之為“圈點(diǎn)窗體”。

      1.圈點(diǎn)窗體的設(shè)置

      PowerPoint VBA的窗體不同于VB窗體,其為Microsoft Forms 2.0的窗體,因此其在功能上比較弱,也就是說,相應(yīng)的屬性、方法和事件較少。這樣,一些在VB窗體中只要設(shè)置一下屬性或調(diào)用一個方法就能實(shí)現(xiàn)的功能,在VBA窗體中卻需要調(diào)用API函數(shù)才能實(shí)現(xiàn)。

      (1)圈點(diǎn)窗體的無標(biāo)題欄設(shè)置

      VBA窗體默認(rèn)是有標(biāo)題欄的,并且無法通過設(shè)置屬性或調(diào)用方法來改變。因此,將圈點(diǎn)窗體設(shè)置為無標(biāo)題欄需要通過調(diào)用API函數(shù)來實(shí)現(xiàn)。詳細(xì)實(shí)現(xiàn)方法和VBA代碼可參見文獻(xiàn)[1]。

      (2)圈點(diǎn)窗體的透明設(shè)置

      VBA窗體沒有專門用于設(shè)置窗體透明性的屬性或方法。這樣,將圈點(diǎn)窗體設(shè)置為透明需要通過其他方式來實(shí)現(xiàn)。其實(shí)現(xiàn)的思想和方法是:將當(dāng)前屏幕顯示的教學(xué)課件通過屏幕硬拷貝的方式保存到剪貼板,然后將剪貼板中的數(shù)據(jù)轉(zhuǎn)換為圖像格式并設(shè)置為圈點(diǎn)窗體Picture屬性的數(shù)據(jù)。這樣,圈點(diǎn)窗體顯示出的就是教學(xué)課件的內(nèi)容,就如同窗體是透明的一樣。

      由于VBA沒有提供屏幕硬拷貝函數(shù)、剪貼板對象和圖像格式轉(zhuǎn)換函數(shù),因而這些就需要通過調(diào)用API函數(shù)來實(shí)現(xiàn)。這3項(xiàng)的詳細(xì)實(shí)現(xiàn)方法和VBA代碼可分別參見文獻(xiàn)[2]、[3]和[4]。

      (3)圈點(diǎn)窗體的最大化

      圈點(diǎn)窗體需要在啟動時(shí)最大化以使窗體能完全覆蓋PowerPoint課件,而VBA窗體沒有專門用于設(shè)置窗體啟動狀態(tài)的屬性或方法,因此同樣需要通過調(diào)用API函數(shù)來實(shí)現(xiàn)。所用到的API函數(shù)為ShowWindow,于是,將圈點(diǎn)窗體最大化可通過在VBA宏啟動的主程序Main代碼中的Load usrfrm之后加入如下代碼實(shí)現(xiàn):

      ShowWindow usrfrm.hWnd, 3

      2.圈點(diǎn)圖形的繪制

      (1)相關(guān)的API函數(shù)

      最大化的無標(biāo)題欄、透明的圈點(diǎn)窗體完全覆蓋PowerPoint課件后,就可以開始進(jìn)行規(guī)則圈點(diǎn)圖形的繪制。遺憾的是,VBA窗體沒有提供進(jìn)行圖形繪制的方法,需要通過調(diào)用API函數(shù)來實(shí)現(xiàn)圈點(diǎn)圖形的繪制。涉及到的相關(guān)API函數(shù)有GetDC、GetCursorPos、M o v e T o E x、L i n e T o、E l l i p s e、S e t R O P2、CreatePen、GetStockObject、SelectObject和DeleteObject。這些API函數(shù)詳細(xì)的聲明格式和調(diào)用方法可參見文獻(xiàn)[5]。

      (2)圈點(diǎn)圖形的繪制函數(shù)

      直線和方框的繪制,均可利用API函數(shù)MoveToEx和LineTo的組合來實(shí)現(xiàn);橢圓的繪制,則可直接調(diào)用API函數(shù)Ellipse來實(shí)現(xiàn)。

      (3)圈點(diǎn)圖形的繪制過程

      圈點(diǎn)圖形的繪制,是基于窗體的MouseDown、MouseMove和MouseUp事件實(shí)現(xiàn)的。其實(shí)現(xiàn)的思想和方法是:在點(diǎn)下鼠標(biāo)觸發(fā)的窗體MouseDown事件中獲取當(dāng)前鼠標(biāo)的屏幕坐標(biāo)位置作為起始點(diǎn),然后不松開鼠標(biāo)進(jìn)行移動觸發(fā)的窗體MouseMove事件中獲取當(dāng)前鼠標(biāo)的屏幕坐標(biāo)位置作為中間點(diǎn),最后松開鼠標(biāo)觸發(fā)的窗體MouseUp事件中獲取當(dāng)前鼠標(biāo)的屏幕坐標(biāo)位置作為終止點(diǎn);起始點(diǎn)與中間點(diǎn)確定的圖形為臨時(shí)圖形,其采用XOR(異或)模式繪制在有背景圖像的圈點(diǎn)窗體上,再一次以XOR模式繪制同一個圖形即可消除該圖形而不影響背景;起始點(diǎn)與終止點(diǎn)確定的圖形為最終繪制出的圈點(diǎn)圖形。

      3.圈點(diǎn)圖形的類型切換

      根據(jù)圈點(diǎn)的需求,直線、方框和橢圓這3種類型的圈點(diǎn)圖形必須能方便地進(jìn)行相互切換。為操作上的便捷性,采用快捷鍵方式進(jìn)行相互切換。其實(shí)現(xiàn)方法是,以切換至直線為例,設(shè)其快捷鍵為Ctrl+F1,在圈點(diǎn)窗體的KeyDown事件中加入如下代碼:

      If Shift = 2 And KeyCode = vbKeyF1

      ShapeStyle = "Line"

      End If

      其中,變量ShapeStyle存儲當(dāng)前圈點(diǎn)圖形的類型。同理,可實(shí)現(xiàn)切換圈點(diǎn)圖形至方框或橢圓。

      4.圈點(diǎn)圖形的顏色設(shè)置

      圈點(diǎn)圖形的顏色設(shè)置在進(jìn)行圈點(diǎn)時(shí)起到非常重要的作用,因此需要設(shè)置圈點(diǎn)圖形的顏色為紅、黃、藍(lán)、綠、青或紫等常見顏色。同樣的,為操作上的便捷性,采用快捷鍵方式進(jìn)行顏色設(shè)置。其實(shí)現(xiàn)方法是,以設(shè)置紅色為例,設(shè)其快捷鍵為Ctrl+R,則在圈點(diǎn)窗體的KeyDown事件中加入如下代碼:

      If Shift = 2 And KeyCode = vbKeyR

      DrawColor = vbRed

      End If

      其中,DrawColor存儲當(dāng)前圈點(diǎn)圖形的顏色。同理,可實(shí)現(xiàn)設(shè)置圈點(diǎn)圖形的顏色為其他常見顏色。

      5.圈點(diǎn)圖形的寬度設(shè)置

      圈點(diǎn)圖形的寬度設(shè)置在進(jìn)行圈點(diǎn)時(shí)必不可少,根據(jù)實(shí)際多媒體教學(xué)中對圈點(diǎn)的需求,一般需要設(shè)置圈點(diǎn)圖形的寬度為不同大小的值。同樣的,為操作上的便捷性,采用快捷鍵方式進(jìn)行寬度設(shè)置。其實(shí)現(xiàn)方法是,以設(shè)置寬度是1為例,設(shè)其快捷鍵為Ctrl+1,則在圈點(diǎn)窗體的KeyDown事件中加入如下代碼:

      If Shift = 2 And KeyCode = vbKey1

      DrawWidth = 1

      End If

      其中,DrawWidth存儲當(dāng)前圈點(diǎn)圖形的寬度。同理,可實(shí)現(xiàn)設(shè)置圈點(diǎn)圖形的寬度為其他值。

      6.規(guī)則圖形圈點(diǎn)的啟用與終止

      在PowerPoint教學(xué)課件中啟用VBA實(shí)現(xiàn)的規(guī)則圖形圈點(diǎn)是要以宏的形式啟用的。因此需要在PowerPoint頁面適當(dāng)?shù)牡胤椒胖靡粋€圖形按鈕,并將圖形按鈕對應(yīng)“動作設(shè)置”中的“運(yùn)行宏”設(shè)置為主程序“Main”。這樣,當(dāng)演示PowerPoint教學(xué)課件并需要進(jìn)行規(guī)則圖形圈點(diǎn)時(shí),點(diǎn)擊這個圖形按鈕就開始啟用規(guī)則圖形圈點(diǎn)功能了。

      圈點(diǎn)窗體的關(guān)閉事實(shí)上就意味著VBA宏的終止,也就是規(guī)則圖形圈點(diǎn)的終止。實(shí)現(xiàn)圈點(diǎn)窗體的關(guān)閉,只需要在圈點(diǎn)窗體的DblClick事件中加入代碼:

      Unload Me

      也就是說,鼠標(biāo)雙擊就可以終止規(guī)則圖形圈點(diǎn),返回到PowerPoint教學(xué)課件的正常演示。

      三、結(jié)束語

      本文利用VBA編程實(shí)現(xiàn)了PowerPoint教學(xué)課件的規(guī)則圖形圈點(diǎn),彌補(bǔ)了PowerPoint只能進(jìn)行涂鴉式畫線圈點(diǎn)的不足。PowerPoint教學(xué)課件規(guī)則圖形圈點(diǎn)的實(shí)現(xiàn),將能較好地提高教師多媒體教學(xué)的工作效率和學(xué)生聽課的效果,從而提高教學(xué)質(zhì)量。

      [1]李政,梁海英,李昊,等.VBA應(yīng)用基礎(chǔ)與實(shí)例教程(第2版)[M].北京:國防工業(yè)出版社,2009

      [2]How to do a screen capture using VBA [EB/OL].

      http://word.mvps.org/FAQS/MacrosVBA/ PrtSc.htm

      [3]閑來無事,說說Windows剪貼板[EB/OL]. http://www. officefans.net/cdb/viewthread.php?tid=103805

      [4]利用VB捕捉并保存屏幕圖像[EB/OL].http://www. qqread.com/vb/k234472.html

      [5]冉林倉.Windows API編程[M].北京:清華大學(xué)出版社,2005

      Realization of punctuating PowerPoint courseware with regular graphics using VBA

      Li Xudong
      Zhejiang university of finance & economics, Hangzhou, 310018, China

      Teachers often use the punctuation function of PowerPoint when teaching with PowerPoint teach ing courseware. However, there is a big limitation and shortage of the punctuation function of PowerPoint: the drawing pen of PowerPoint provides no line, rectangle, circle and ellipse but provides doodling function. For this reason, this paper realized punctuation of PowerPoint courseware with regular graphics using VBA, which made up the shortage of PowerPoint that only provides doodling function. The realization of punctuating PowerPoint courseware with regular graphics will well improve the working effect of multimedia teaching of teachers and the listening effect of students and therefore improve the teaching quality.

      teaching courseware; PowerPoint; punctuation; regular graphics; VBA

      book=34,ebook=679

      2010-01-04

      李旭東,博士,副教授。

      猜你喜歡
      圈點(diǎn)窗體鼠標(biāo)
      Progress in Neural NLP: Modeling, Learning, and Reasoning
      Engineering(2020年3期)2020-09-14 03:42:00
      試談Access 2007數(shù)據(jù)庫在林業(yè)檔案管理中的應(yīng)用
      檔案天地(2019年5期)2019-06-12 05:12:02
      黃侃讀書
      愛你(2016年12期)2016-11-26 03:33:24
      笛卡爾乘積圖的圈點(diǎn)連通度
      社交媒體受眾點(diǎn)贊行為的經(jīng)濟(jì)效益——以微信朋友圈點(diǎn)贊為例
      新聞傳播(2016年4期)2016-07-18 10:59:20
      基于LayeredWindow的異形窗體局部刷新
      中文信息(2014年2期)2014-03-06 23:49:14
      巧設(shè)WPS窗體控件讓表格填寫更規(guī)范
      45歲的鼠標(biāo)
      超能力鼠標(biāo)
      IM家庭電子(2008年11期)2008-12-05 09:49:20
      WinCE.net下圖形用戶界面的開發(fā)
      阳信县| 乳源| 桃源县| 广州市| 遂平县| 东光县| 阳谷县| 图木舒克市| 启东市| 康定县| 旬阳县| 怀集县| 肇源县| 安国市| 日土县| 合阳县| 鹰潭市| 石家庄市| 商水县| 崇礼县| 聊城市| 潞西市| 威海市| 高要市| 石河子市| 海南省| 嘉定区| 安义县| 南丰县| 峨山| 资源县| 钟祥市| 鹰潭市| 湘西| 桓仁| 建始县| 无为县| 灵石县| 郑州市| 吉林省| 衡南县|