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

例談利用PowerPoint中的VBA制作交互式物理課件

2013-12-29 00:00:00陳夏玲閆小軍
中國(guó)信息技術(shù)教育 2013年1期

摘要:針對(duì)PowerPoint的強(qiáng)大功能,本文結(jié)合課件《簡(jiǎn)諧運(yùn)動(dòng)》的制作過(guò)程,歸納了利用PowerPoint中的VBA制作交互式物理課件的基本策略、動(dòng)畫(huà)實(shí)現(xiàn)方法與技巧。

關(guān)鍵詞:PowerPoint;VBA;物理課件;交互性

PowerPoint課件由于制作方便、快捷,深受大家喜愛(ài)。但絕大多數(shù)由PowerPoint制作的課件交互功能差、動(dòng)畫(huà)簡(jiǎn)單、形式呆板,成了名副其實(shí)的幻燈片,尤其是交互性強(qiáng)的動(dòng)畫(huà)模擬課件很少見(jiàn)到。因此,許多人錯(cuò)誤地認(rèn)為PowerPoint只是制作幻燈片的簡(jiǎn)單工具,功能有限,不可能制作出交互性很強(qiáng)的課件。通過(guò)反復(fù)地思考和摸索,我們發(fā)現(xiàn)可以利用PowerPoint中的VBA制作出交互性很強(qiáng)、動(dòng)感十足且符合物理運(yùn)動(dòng)規(guī)律的課件,下面就粗略介紹一下《簡(jiǎn)諧運(yùn)動(dòng)》課件的制作方法及關(guān)鍵技術(shù)。

● 課件制作的原理和實(shí)現(xiàn)的功能

1.彈簧振子做簡(jiǎn)諧運(yùn)動(dòng)動(dòng)畫(huà)的實(shí)現(xiàn)

彈簧振子的振動(dòng)過(guò)程也就是小球的運(yùn)動(dòng)過(guò)程。設(shè)定一個(gè)時(shí)間間隔,只要計(jì)算出每個(gè)時(shí)間間隔后小球圓心的位置,也就知道了小球的運(yùn)動(dòng)軌跡。我們可以把實(shí)際問(wèn)題轉(zhuǎn)化為運(yùn)用循環(huán)結(jié)構(gòu)和簡(jiǎn)諧運(yùn)動(dòng)規(guī)律來(lái)計(jì)算圓心運(yùn)動(dòng)軌跡的過(guò)程。具體算法如下:簡(jiǎn)諧運(yùn)動(dòng)中彈簧振子離開(kāi)平衡位置的位移x隨時(shí)間t變化的函數(shù)表達(dá)式為:,彈簧振子的速度v隨時(shí)間t變化的關(guān)系為:,彈簧振子的加速度a隨時(shí)間t變化的關(guān)系為:,其中A為振幅, 為角速度,即,T是振動(dòng)周期,是初相位。假設(shè)振子運(yùn)動(dòng)的角速度ω=1,初相位=0,簡(jiǎn)諧運(yùn)動(dòng)的函數(shù)表達(dá)式簡(jiǎn)化為:,。運(yùn)動(dòng)時(shí)間t初值為0,輸入振幅A,計(jì)算出彈簧振子的位移x、速度v和加速度a,累加小球運(yùn)動(dòng)的時(shí)間t=t+0.1,直到t大于所設(shè)定的時(shí)間結(jié)束。

2.課件實(shí)現(xiàn)的功能

點(diǎn)擊“演示”按鈕時(shí),課件可以動(dòng)態(tài)地模擬彈簧振子振動(dòng)的全過(guò)程,同時(shí)繪制振動(dòng)圖像,“演示”按鈕同時(shí)自動(dòng)變?yōu)椤扒宄卑粹o,點(diǎn)擊“清除”按鈕可以清除圖像;分別點(diǎn)擊“顯示位移”、“顯示速度”、“顯示回復(fù)力”按鈕,可以動(dòng)態(tài)顯示位移、速度和回復(fù)力的大小和方向隨時(shí)間變化的矢量圖,同時(shí)這些按鈕自動(dòng)變?yōu)椤半[藏位移”、“隱藏速度”、“隱藏回復(fù)力”,分別點(diǎn)擊它們可以隱藏位移、速度和回復(fù)力的矢量圖;文本框中輸入振幅值可以改變振子的振幅A;點(diǎn)擊“退出”按鈕可退出課件,運(yùn)行效果如下圖所示。

● 簡(jiǎn)諧運(yùn)動(dòng)課件的制作

1.添加對(duì)象

(1)啟動(dòng)PowerPoint 2003,插入一張空白幻燈片,通過(guò)“視圖/工具欄”菜單打開(kāi)“繪圖”和“控件工具箱”這兩個(gè)工具欄。

(2)坐標(biāo)的繪制。使用繪圖工具欄上的箭頭工具,按住Shift鍵,繪制一條自左向右的箭頭作為水平時(shí)間軸,再次使用箭頭工具,按住Shift鍵,繪制一條從上向下的箭頭作為豎直位移軸,分別右鍵單擊箭頭彈出快捷菜單,選擇“設(shè)置自選圖形格式”命令,打開(kāi)設(shè)置自選圖形格式對(duì)話框,分別在“顏色和線條、尺寸、大小”選項(xiàng)卡下做相應(yīng)設(shè)置,點(diǎn)擊“確定”按鈕即可。再使用繪圖工具欄上的文本框工具,給橫軸標(biāo)上“t/s”,縱軸標(biāo)上“x/m”。

(3)小球的繪制。使用繪圖工具欄上的“橢圓工具”,按住Shift鍵,繪制一個(gè)適當(dāng)大小的圓形作為彈簧振子;再繪制一個(gè)直徑為1mm的圓形作為振動(dòng)圖像的一個(gè)像點(diǎn)。

(4)彈簧的添加。先利用Windows附件中的畫(huà)圖軟件制作彈簧圖片,通過(guò)“插入/圖片/來(lái)自文件”菜單插入彈簧圖片,右鍵單擊圖片彈出快捷菜單,選擇“設(shè)置自選圖形格式”命令,打開(kāi)設(shè)置自選圖形格式對(duì)話框,在“尺寸”選項(xiàng)卡中取消“鎖定縱橫比”選項(xiàng),其他選項(xiàng)卡根據(jù)需要做相應(yīng)設(shè)置。

(5)矢量圖的繪制。使用繪圖工具欄上的箭頭工具,按住Shift鍵,繪制一條自上向下的箭頭作為方向向下的位移矢量,然后復(fù)制這個(gè)箭頭,右鍵單擊箭頭彈出快捷菜單,選擇“設(shè)置自選圖形格式”命令,打開(kāi)設(shè)置自選圖形格式對(duì)話框,在“尺寸”選項(xiàng)卡旋轉(zhuǎn)選項(xiàng)中輸入180度,使箭頭向上。同樣方法繪制速度矢量箭頭和回復(fù)力矢量箭頭,為了區(qū)別各矢量圖可設(shè)置不同顏色代表不同的物理量。

(6)矢量標(biāo)簽的添加。點(diǎn)擊菜單欄“視圖/工具欄/控件工具箱”命令彈出控件工具箱,點(diǎn)擊“標(biāo)簽”圖標(biāo)添加標(biāo)簽,右鍵單擊標(biāo)簽,在彈出的快捷菜單中點(diǎn)擊“屬性”命令,打開(kāi)“屬性”對(duì)話框,將“Caption”屬性改為“位移”, 屬性“AutoSize”改為“True”,屬性“ForeColor”改為與位移箭頭相同的顏色。同理,添加“速度”和“回復(fù)力”標(biāo)簽。

(7)輸入文本框的添加。在控件工具箱中,點(diǎn)擊“文本框”圖標(biāo)添加文本框,根據(jù)需要設(shè)置屬性。再使用繪圖工具欄上的文本框工具,分別在“文本框”兩側(cè)添加“振幅”和“cm”字樣。

(8)按鈕的添加。在控件工具箱中,點(diǎn)擊“命令按鈕”圖標(biāo)添加按鈕,右鍵單擊“命令按鈕”,在彈出的快捷菜單中點(diǎn)擊“屬性”命令,打開(kāi)“屬性”對(duì)話框,將“名稱(chēng)”和“Caption”屬性都改為“演示”,屬性“AutoSize”改為“True”。同理,再添加8個(gè)“命令按鈕”,將“名稱(chēng)”和“Caption”屬性分別改為“清除”、“顯示位移”、“隱藏位移”、“顯示速度”、“隱藏速度”、“顯示回復(fù)力”、“隱藏回復(fù)力”和“退出”,屬性“AutoSize”都改為“True”。

通過(guò)鼠標(biāo)移動(dòng)這些命令按鈕,分別使“演示”和“清除”按鈕、“顯示位移”和“隱藏位移”按鈕、“顯示速度”和“隱藏速度”按鈕、“顯示回復(fù)力”和“隱藏回復(fù)力”按鈕完全疊加重合。再選中所有的按鈕,點(diǎn)擊繪圖工具欄上的“繪圖/對(duì)齊或分布/頂端對(duì)齊”命令,可以使它們上下對(duì)齊;再次點(diǎn)擊“繪圖/對(duì)齊或分布/橫向分布”命令,使它們橫向等距離分布。

(9)對(duì)象名稱(chēng)的確定。點(diǎn)擊菜單欄“工具/宏/錄制新宏”命令,打開(kāi)錄制新宏對(duì)話框,使用默認(rèn)宏名并單擊“確定”按鈕,單擊選定小球,單擊浮動(dòng)工具欄中的“停止錄制”命令,結(jié)束宏錄制。點(diǎn)擊菜單欄“工具/宏/宏”命令,選中剛才錄制的宏名并單擊“編輯”按鈕,打開(kāi)VBA編輯窗口,在代碼中可以看到小球的名稱(chēng)為Shapes(“Oval 8”)。同理,錄制振動(dòng)圖像的像點(diǎn)名稱(chēng)為Shapes(“Oval 9”),前半周期的位移矢量名稱(chēng)為Shapes(“l(fā)ine 10”),后半周期的位移矢量名稱(chēng)為Shapes(“l(fā)ine 11”),前半周期的速度矢量名稱(chēng)為Shapes(“l(fā)ine 28”),后半周期的速度矢量名稱(chēng)為Shapes(“l(fā)ine 29”),前半周期的回復(fù)力矢量名稱(chēng)為Shapes(“l(fā)ine 31”),后半周期的回復(fù)力矢量名稱(chēng)為Shapes(“l(fā)ine 30”)。

2.編寫(xiě)宏代碼

在幻燈片中雙擊按鈕或文本框等控件進(jìn)入宏編輯窗口,并輸入以下代碼:

Dim A As Single '定義變量A為單精度

Sub csjs() '通過(guò)輸入文本框給振幅A賦值

A = Val(TextBox1.Text)

End Sub

Private Sub 演示_Click()

演示.Visible = False

清除.Visible = True

csjs

For i = 0 To 250

x1 = 110

y1 = A * Cos(t) '位移矢量

t = t + 0.1

Shapes("Oval 8").Left = x1 '小球的橫坐標(biāo),對(duì)象名稱(chēng)必須與在宏中定義的名稱(chēng)一致

Shapes("Oval 8").Top = y1 + 215 '小球的縱坐標(biāo)

Shapes("Picture 12").Height = y1 + 215 ' 彈簧的伸縮

Shapes("line 10").Height = A * Cos(t)

Shapes("line 11").Height = -A * Cos(t)

Shapes("line 28").Height = -A * Sin(t)

Shapes("line 29").Height = A * Sin(t)

Shapes("line 28")Top = y1 + 215

Shapes("line 29").Top = y1 + 215

Shapes("line 31").Height = -A * Cos(t)

Shapes("line 30").Height = A * Cos(t)

With Shapes("Oval 9").Duplicate '復(fù)制振動(dòng)圖像的像點(diǎn)到下列坐標(biāo)位置

.Left = 22 * t + 130

.Top = y1 + 220

End With

T1 = Timer '控制動(dòng)畫(huà)速度

While Timer - T1 < 0.001 :DoEvents :Wend

Next

SlideShowWindows(1).View.GotoSlide 1 '頁(yè)面刷新的語(yǔ)句

End Sub

Private Sub 清除_Click()

清除.Visible = False

演示.Visible = True

n = Shapes.Count '統(tǒng)計(jì)頁(yè)面上的對(duì)象數(shù)

b = 30

Dim J As Integer

For J = n To b Step -1

Shapes(J).Delete '清除頁(yè)面上指定的對(duì)象

T1 = Timer

While Timer - T1 < 0.01 :DoEvents :Wend

Next

TextBox1.Value = 70

SlideShowWindows(1).View.GotoSlide 1

End Sub

Private Sub 顯示回復(fù)力_Click()

顯示回復(fù)力.Visible = False

隱藏回復(fù)力.Visible = True

Shapes("line 30").Visible = True

Shapes("line 31").Visible = True

Label4.Visible = True

SlideShowWindows(1).View.GotoSlide 1

End Sub

Private Sub 隱藏回復(fù)力_Click()

隱藏回復(fù)力.Visible = False

顯示回復(fù)力.Visible = True

Shapes("line 30").Visible = False

Shapes("line 31").Visible = False

Label4.Visible = False

SlideShowWindows(1).View.GotoSlide 1

End Sub

Private Sub 退出_Click()

Application.Quit

End Sub

同理,“顯示速度”、“顯示位移”按鈕代碼與“顯示回復(fù)力”按鈕代碼相同,“隱藏速度”、“隱藏位移”按鈕代碼與“隱藏回復(fù)力”按鈕代碼相同。

● 制作課件過(guò)程中遇到的問(wèn)題及解決的方法

(1)代碼中要引用有關(guān)控件或?qū)ο蟮拿Q(chēng),但是只有從“控件工具箱”中添加的控件才能在屬性窗口中查到其名稱(chēng),對(duì)于從繪圖工具欄中繪制的各種自選圖形以及“插入”菜單中插入的文本框、圖片和表格等對(duì)象其名稱(chēng)便無(wú)從得知。獲取名稱(chēng)的唯一方法是針對(duì)這些對(duì)象錄制一段臨時(shí)宏,然后在宏代碼中去查找。

(2)在模擬彈簧的伸縮動(dòng)畫(huà)時(shí),利用Height屬性改變圖片的高度來(lái)實(shí)現(xiàn),但是PowerPoint默認(rèn)值是鎖定縱橫比,彈簧伸縮時(shí)不但縱向伸縮,而且橫向也在伸縮。所以,需要在彈簧圖片的“尺寸”選項(xiàng)卡中取消“鎖定縱橫比”選項(xiàng)。

(3)在模擬各矢量大小變化時(shí),也是利用Height屬性改變箭頭的高度來(lái)實(shí)現(xiàn),但是PowerPoint默認(rèn)狀態(tài)下只是矢量圖的下端伸縮,而上端無(wú)變化,在需要矢量圖的上端伸縮時(shí),可以先畫(huà)一個(gè)向下的箭頭,再在箭頭的“尺寸”選項(xiàng)卡旋轉(zhuǎn)選項(xiàng)中輸入180度,單擊“確定”使箭頭向上。

(4)在利用Delete命令清除圖像時(shí),會(huì)把繪制的像點(diǎn)以及后來(lái)添加的對(duì)象全部清除掉,因此,制作課件時(shí)要在程序執(zhí)行Shapes(J).Delete命令前一次性添加好所有控件和對(duì)象,在執(zhí)行Shapes(J).Delete命令時(shí),J的初始值必須大于界面上添加的所有控件和對(duì)象數(shù)。

(5)由于課件命令按鈕較多,界面顯得比較凌亂無(wú)序,我們采用了Visible屬性使按鈕顯示和隱藏交替出現(xiàn),在同一位置設(shè)計(jì)兩個(gè)按鈕,保證界面美觀有序。

(6)制作好的課件不能正常運(yùn)行。為了防范宏病毒對(duì)計(jì)算機(jī)的侵害,一般情況下,在PowerPoint的工具菜單中對(duì)宏的安全性設(shè)置為“高”選項(xiàng),這時(shí)將拒絕執(zhí)行VBA代碼。在確保VBA代碼運(yùn)行無(wú)害的前提下,需要降低PowerPoint的安全等級(jí)以使VBA代碼得以執(zhí)行。單擊菜單欄“工具/宏/安全性”命令,打開(kāi)“安全性”對(duì)話框,單擊“安全級(jí)”選項(xiàng)卡,選擇“中”或“低”選項(xiàng),單擊“確定”即可。

主站蜘蛛池模板: 午夜不卡视频| 欧美日韩另类国产| 欧美成人午夜视频免看| 欧美黄网在线| 天天干天天色综合网| 999精品在线视频| 色天天综合| 亚洲国产中文在线二区三区免| 一级毛片免费不卡在线视频| 国产一区二区福利| 国产亚洲精品91| 欧美在线视频不卡第一页| 成人在线综合| 国产精品蜜臀| 亚洲男人天堂网址| 亚洲三级影院| 自慰网址在线观看| 国产日本欧美在线观看| 一级毛片免费不卡在线| 国产农村1级毛片| 九九九国产| 色综合狠狠操| 国产成人欧美| a免费毛片在线播放| 一级毛片a女人刺激视频免费| 四虎成人精品在永久免费| 在线色国产| 97se亚洲| 婷婷亚洲最大| 亚欧乱色视频网站大全| 99久久国产综合精品2020| 亚洲精品福利网站| 亚洲日本www| 国产成人三级| 久久综合伊人 六十路| 亚洲精品人成网线在线 | 亚洲欧美成人网| 精品国产一区二区三区在线观看| 亚洲一区二区三区国产精品| 欧美性猛交xxxx乱大交极品| 中文字幕乱码二三区免费| 国产精品亚洲一区二区三区在线观看| 亚洲精品自在线拍| 久久国产黑丝袜视频| 特级aaaaaaaaa毛片免费视频| 天天躁夜夜躁狠狠躁躁88| 欧美成人一级| 国产精品人人做人人爽人人添| 国内视频精品| 亚洲欧美成aⅴ人在线观看| 欧美一级在线看| 国产成人精品一区二区免费看京| 亚洲国产日韩在线观看| 伊人丁香五月天久久综合 | 69综合网| 欧美19综合中文字幕| 色播五月婷婷| 98超碰在线观看| 毛片一级在线| 亚洲aaa视频| 老司机午夜精品视频你懂的| 日韩精品免费一线在线观看| 国产精品成人免费视频99| 国产精品免费福利久久播放| 激情六月丁香婷婷| 久久窝窝国产精品午夜看片| 国产青青草视频| 美女被躁出白浆视频播放| 99精品这里只有精品高清视频| 国产在线啪| 亚洲va欧美ⅴa国产va影院| swag国产精品| 91无码视频在线观看| 欧美日韩精品在线播放| 国产真实二区一区在线亚洲| 亚洲一级毛片在线播放| 精品少妇人妻无码久久| 国产一区二区三区精品久久呦| 亚洲成人网在线播放| 久久青青草原亚洲av无码| 宅男噜噜噜66国产在线观看| 国产国拍精品视频免费看|