Director基礎教程:Director 疑難解答(4)
2024-09-08 19:27:14
供稿:網友
director 疑難解答
01. 我怎樣才能在director中使用powerpoint文件呢?
[a] 在director中有多種方法來打開或者顯示一個powerpoint幻燈片。
1. 使用director的powerpoint import這個xtra直接導入powerpoint幻燈片。
2. 使用lingo命令open {file name} with {application name},這種方法需要用戶安裝過powerpoint或者powerpoint viewer。powerpoint viewer是微軟自由發放的一個軟件,可以在用戶沒有安裝powerpoint的情況下放映幻燈片。
3. 使用activex控件打開一個web瀏覽器窗口來顯示powerpoint文件,這需要ie和
powerpoint或者powerpoint viewer。
4. 使用其他第三方xtra,包括ravware's ppviewer或者buddyapi。二者都需要用戶已經安裝過powerpoint viewer。
02. 我怎樣通過buddyapi來打印pdf文檔呢?
[a] 使用buddyapi你就可以打印pdf文檔了,但你必須保證acrobat reader已經被安裝到了你的系統上。
有兩種方法來打印一個pdf文件:一種方法是給用戶提供一個打印對話框,另一種方法就是在后臺進行打印,兩種方法具體操作如下:
1. 不使用打印對話框:
vresult = baprintfile(vfile)
2. 通過標準的打印對話框:
vresult = barunprogram(bashortfilename(bafindapp( "pdf" ) && "/p" &&
bashortfilename(vfile)), "minimised" , false )
03. 我怎樣才能創建一個all_in_one的按鈕行為,把所有和按鈕有關的功能集中在一個行為里面?
[a] 這個問題最好的回答就是使用alphamania shift hue effect。使用這種方法用不著創建單獨的rollover和mousedown成員,只需要為rollover、mousedown和mouseup選擇一個色調變化的等級即可。這樣做的主要優點是不需要其他的行為,并且不需要為按鈕的各種狀態創建不同的成員。
04. 我怎樣才能讓多個單選按鈕成為單選按鈕組?
[a] director缺省的單選按鈕和復選框有點類似,如果你希望他們一起工作,你必須編寫lingo來實現打開一個時關閉另一個。最基本的方法就是通過調用sendallsprites來實現。
05. 怎樣用lingo優化記錄集(游標)?
[a] 你可以通過評估記錄來優化游標,并通過dropcursor命令來忽略無效的記錄。這將返回你需要的記錄集,下面是一個簡短的例子:
vrs.firstrecord()
repeat with x = 1 to vrs.getrecordcount()
if vrs.getfield(vfield) = vcondition then
vrs.droprecord()
else
vrs.nextrecord()
end if
end repeat
譯者注:游標是一個sql術語,數據庫游標和字處理程序上的光標類似,當你按下down箭頭時光標就在記錄上向下滾動一行,用數據庫游標可以選擇一組數據,可以在這組記錄(通常稱為記錄集)上滾動光標,并檢查游標指到的每一行數據。
06. 怎樣在cd上為我的movies保持相對連接而不出現定位對話框?
[a] 在你發布作品、保護和刻錄cd時,director會保持影片的相對路徑,最常見的錯誤是創建文件時采取一種目錄結構方式,保護文件時卻使用另一個目錄以便備份。問題就在于director只記住了文件最初的連接,但現在卻被破壞了。
其實,你可以在在searchpath中包含進當前目錄:
( the searchpath ). add ( the moviepath & ‘‘movies‘‘)
07. 怎樣在全屏模式下打開stage時去掉stage上一個像素的黑框?
[a] 為了在projector上去掉黑框,你可以使用非正式聲明的miaw的“cutout”屬性。創建一個1x1、全屏播放的projector,通過miaw命令用他打開你的主影片,設置主影片的windowtype為一個1 bit的位圖,該位圖可以是一個矩形,可以是你的影片的形狀:
( window ‘‘my window‘‘). windowtype = member (‘‘1 bit bitmap‘‘)
對于director 7.02或早期版本,你可以使用border這個xtra實現同樣的效果。
08. 怎樣在valentina中回滾?
[a] valentina不支持回滾,因為你不能通過sql語句來插入或者改變數據,也就不能簡單的保存sql歷史。
譯者注:回滾也是數據庫術語,即取消多步數據庫操作。
09. 我怎樣在shockwave中保存和得到用戶的數據?
[a]shockwave不允許你訪問用戶的硬盤,但有一個目錄例外,這樣做是為了防止別人編制惡意的shockwave程序來破壞你的系統。如果你想在shockwave中保存用戶的數據,使用getpref和setpref命令即可:
setpref prefname, prefvalue
getpref (preffilename)
11. 各功能鍵的鍵控代碼(keycodes)是多少?
[a] 功能鍵可用作keycodes來測試:
f1-122
f2-120
f3-99
f4-118
f5-96
f7-98
f8-100
f9-101
f10-109
f11-103
f12-111
f13-105
注意,功能鍵的keycodes在生成放映機時(projector)時是不能用的。