線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1238
推到 Plurk!
推到 Facebook!

請教有關 UnDelphiX

尚未結案
nick_chen
一般會員


發表:9
回覆:5
積分:2
註冊:2003-04-14

發送簡訊給我
#1 引用回覆 回覆 發表時間:2003-12-01 08:41:54 IP:61.222.xxx.xxx 未訂閱
各位前輩: 請問一下,我目前正在學習使用UnDelphiX, 有些不懂的地方,以下^^^^部份是我想不懂的地方, 請各位前輩指導,謝謝! TMouseCursor = class (TImageSprite) protected procedure DoMove(MoveCount: Integer); override; ^^^^^^^^ End; MouseCur := TMouseCursor.Create(Form1.DXSpriteEngine.Engine); ^^^^^^^^^^^^^^^^^^^^^^^^^^^ TCursor.Create(Form1.DXSpriteEngine.Engine); ^^^^^^^^^^^^^^^^^^^^^^^^^^^ Image := Form1.DXImageList.Items.Find('kur'); ^^^^^^^^^^^^^^^^^^
pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#2 引用回覆 回覆 發表時間:2003-12-01 08:58:24 IP:210.61.xxx.xxx 未訂閱
TMouseCursor = class (TImageSprite)
  protected
    procedure DoMove(MoveCount: Integer); override;
                                          ^^^^^^^^
override一類別方法是指父類別己經有宣為一個為virtual為dynamic型式 的類別方法. DoMove是DelphiX指每一個週期要作移動圖的作業
MouseCur := TMouseCursor.Create(Form1.DXSpriteEngine.Engine);
                                ^^^^^^^^^^^^^^^^^^^^^^^^^^^
TCursor.Create(Form1.DXSpriteEngine.Engine);
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^ 
Image := Form1.DXImageList.Items.Find('kur');
                           ^^^^^^^^^^^^^^^^^^           
因為您的TMouseCursor是TImageSprite類別後代, 而整個TImageSprite需是在有DXSpriteEngine情況下使用 所以需參照這個物件. DXImageList裡放的是經過封裝過的連續動作圖圖庫 藉由Items.Find可找到代號為kur動作圖的位置.
bruce0211
版主


發表:157
回覆:668
積分:279
註冊:2002-06-13

發送簡訊給我
#3 引用回覆 回覆 發表時間:2003-12-01 16:13:47 IP:211.21.xxx.xxx 未訂閱
借問一下... 什麼是 UnDelphiX ??
superlevin
高階會員


發表:181
回覆:313
積分:180
註冊:2003-01-12

發送簡訊給我
#4 引用回覆 回覆 發表時間:2003-12-01 16:17:00 IP:211.76.xxx.xxx 未訂閱
引言: 借問一下... 什麼是 UnDelphiX ?? < face="Verdana, Arial, Helvetica"> UnDelphiX(Unofficial DelphiX ) 另一種Delphi for DirectX元件 更簡單的來說,就是用來寫遊戲的元件 請參考:
------
林壽山
網站: http://superlevin.ifengyuan.tw
mail: superlevin@gmail.com
nick_chen
一般會員


發表:9
回覆:5
積分:2
註冊:2003-04-14

發送簡訊給我
#5 引用回覆 回覆 發表時間:2003-12-01 19:19:36 IP:61.222.xxx.xxx 未訂閱
各位前輩: 感謝pedro前輩的指導,但有一點小弟還是不懂, TMouseCursor是TImageSprite類別後代,所以需參照這個物件這點我懂,那為什 麼還需使用到Engine這個屬性(或方法)呢?
pedro
尊榮會員


發表:152
回覆:1187
積分:892
註冊:2002-06-12

發送簡訊給我
#6 引用回覆 回覆 發表時間:2003-12-02 09:03:57 IP:210.61.xxx.xxx 未訂閱
TMouseCursor在建立的時候 傳入DXSpriteEngine.Engine Engine是TSpriteEngine裡FEngine是TSpriteEngine型態 而TMouseCursor能接受的是TSprite 為什麼不直接用MouseCursor.Create(DXSpriteEngine) 而需使用MouseCursor.Create(DXSpriteEngine.Engine) 確實有一個難以理解 不過在編譯MouseCursor.Create(DXSpriteEngine.Engine) 才能通過 當MouseCursor被DXSpriteEngine參照到時 每一個週期下DXSpriteEngine.Draw 會觸發MouseCursor.DoMouse 這樣才形成一個群組關係 也就是隸屬於DXSpriteEngine那一層底下的 Sprite物件都需作移動或更新圖像作業
系統時間:2024-11-23 3:37:59
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!