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

如何設定動態的form的cursor??

 
mihopaul
一般會員


發表:25
回覆:59
積分:16
註冊:2002-03-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2002-03-24 12:02:30 IP:211.74.xxx.xxx 未訂閱
敝人想在程式執行很久的時後改變cursor為動態的ani游標 就像是busy 時會出現漏斗一樣~~~ var HOLDCURSOR,HNEWCURSOR:HCURSOR; HNEWCURSOR:=LOADCURSORFROMFILE('c:\project\ani\BusySheep.ani'); *HOLDCURSOR:=SETCLASSLONG( usercheck.Handle ,GCL_HCURSOR,HNEWCURSOR); 我的usercheck form是動態產生的~~~程式執行到*那一行就會出現記憶體存取違反的訊息,請問我該如何做呢?? 另外再請教~~~我如果把ani檔案放入res資源檔中,又要如何叫出來用呢?? 一樣用loadcursor嗎 謝^^謝
領航天使
站長


發表:12216
回覆:4186
積分:4084
註冊:2001-07-25

發送簡訊給我
#2 引用回覆 回覆 發表時間:2002-03-25 07:44:28 IP:192.168.xxx.xxx 未訂閱
引言: 另外再請教~~~我如果把ani檔案放入res資源檔中,又要如何叫出來用呢?? 一樣用loadcursor嗎
這裏有一個抓.res內cursor的範例程式:
var
  Form1: TForm1;    implementation    {$R *.DFM}
{$R MYCURSOR.RES}    const
  crMyCursor = 100;    var
  MyIcon: TIcon;    procedure TForm1.FormCreate(Sender: TObject);
begin
  MyIcon := TIcon.Create;
  MyIcon.Handle := LoadIcon(hInstance, MAKEINTRESOURCE('MyIcon'));      Screen.Cursors[crMycursor] := LoadCursor(hInstance, MAKEINTRESOURCE('MyCursor'));
  Memo1.Cursor := crMyCursor;
end;
原始程式見: http://delphi.ktop.com.tw/topic.php?TOPIC_ID=7169 ~~~Delphi K.Top討論區站長~~~
------
~~~Delphi K.Top討論區站長~~~
mihopaul
一般會員


發表:25
回覆:59
積分:16
註冊:2002-03-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2002-03-25 12:52:11 IP:211.74.xxx.xxx 未訂閱
引言: [quote] 另外再請教~~~我如果把ani檔案放入res資源檔中,又要如何叫出來用呢?? 一樣用loadcursor嗎
謝謝你的關照^^ 我從borload的網頁查知,如果要load的是ani動態游標的話是要使用 loadimage的,列出程式碼供其它人參考 var h: THandle; begin h := LoadImage(0, 'c:\project\res\BusyQuestion.ani', IMAGE_CURSOR, 0, 0, LR_DEFAULTSIZE or LR_LOADFROMFILE ); if h = 0 then ShowMessage('Cursor not loaded') else Screen.Cursors[crSQLWait] := h; 不過我還是沒有法子把ani檔案加入res檔中,再取出來用 使用FindResource(hInstance,'BusyQuestion','ANI')也找不到 另外delphi不是會自動產生一個和專案同名的res檔嗎~~ 我把正常cursor放入也叫不出來,要再用另外一個res檔 而且名字自取還不行~~~有點奇怪
mihopaul
一般會員


發表:25
回覆:59
積分:16
註冊:2002-03-17

發送簡訊給我
#4 引用回覆 回覆 發表時間:2002-03-25 23:23:35 IP:211.74.xxx.xxx 未訂閱
自已回答第一個問題噲~~~~^^||| 只要把usercheck.handle改成handle就可以了~~~ 我的程式寫到這,好像發現如果是動態產生的form的 都不可以在前頭加上form的名字~~~不然都會出現accesssmemory錯誤~~ 也許是我動態產生方法的原因吧 我是用下列程式碼的 with usercheck.create(self) do try showmodal; finally free; end; 也許用 usercheck:=form1.create(self) 才行吧~~
系統時間:2024-04-25 8:48:24
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!