全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1795
推到 Plurk!
推到 Facebook!

這個Delphi控件鼠標捕捉怎麼用的?

答題得分者是:TWY
mp394681143
一般會員


發表:64
回覆:40
積分:20
註冊:2009-10-11

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-01-14 05:02:50 IP:61.136.xxx.xxx 訂閱
在網上抄的代碼,不知道在Delphi中如何操作,才能輸入以下代碼?好像是鼠標滾動代碼,我不知道如何操作,才能讓下面代碼起作用?

[code delphi]
procedure TForm1.SetLabelCaption( ANum: Integer );
begin
Label1.Caption := IntToStr( ANum );
end;

procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG;
var Handled: Boolean);
var
Rotation: ShortInt;
begin
if Msg.message = WM_MOUSEWHEEL then
begin
Rotation := HIWORD( Msg.wParam );
if Rotation > 0 then
Inc( Num )
else
Dec( Num );
SetLabelCaption( Num );
Handled := True;
end;
end;

[/code]
老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-01-14 07:54:03 IP:59.120.xxx.xxx 未訂閱
當然沒有作用
Num 您並沒有事先宣告
[code delphi]
var
Form1: TForm1;
Num: Integer; //<-加入這個
[/code]



===================引 用 mp394681143 文 章===================
在網上抄的代碼,不知道在Delphi中如何操作,才能輸入以下代碼?好像是鼠標滾動代碼,我不知道如何操作,才能讓下面代碼起作用?

[code delphi]
procedure?TForm1.SetLabelCaption(?ANum:?Integer?);
begin
???Label1.Caption?:=?IntToStr(?ANum?);
end;

procedure?TForm1.ApplicationEvents1Message(var?Msg:?tagMSG;
??var?Handled:?Boolean);
var
??Rotation:?ShortInt;
begin
???if?Msg.message?=?WM_MOUSEWHEEL?then
???begin
??Rotation?:=?HIWORD(?Msg.wParam?);
??if?Rotation?>?0?then
?Inc(?Num?)
??else
?Dec(?Num?);
??SetLabelCaption(?Num?);
??Handled?:=?True;
???end;
end;

[/code]
編輯記錄
老大仔 重新編輯於 2010-01-14 07:54:55, 註解 無‧
mp394681143
一般會員


發表:64
回覆:40
積分:20
註冊:2009-10-11

發送簡訊給我
#3 引用回覆 回覆 發表時間:2010-01-14 21:19:20 IP:61.136.xxx.xxx 訂閱
我看了台南大學的線上教程,只講了簡單的語法和控件,很多我都不懂
老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#4 引用回覆 回覆 發表時間:2010-01-15 07:59:23 IP:59.120.xxx.xxx 未訂閱
不行?是怎樣子的不行??請說明~
以上程式只是顯示當滑鼠滾輪向上、向下時
Label也會跟著增減數值而已

建議您~不懂的語法先爬爬文找一下
會有更多收穫~

===================引 用 mp394681143 文 章===================
我看了台南大學的線上教程,只講了簡單的語法和控件,很多我都不懂
TWY
高階會員


發表:2
回覆:133
積分:152
註冊:2009-09-02

發送簡訊給我
#5 引用回覆 回覆 發表時間:2010-01-15 08:58:33 IP:59.120.xxx.xxx 訂閱
1. 啟動 Delphi -> New Application
2. Standard 頁籤拉一個 Label ,Additional 頁籤拉一個 ApplicationEvents,總共兩個元件隨意放在 Form 上
3. 點選 ApplicationEvents1 元件,在其 OnMessage 事件裡,寫入如下程式碼
Num : Integer;
procedure TForm1.ApplicationEvents1Message(var Msg: tagMSG; var Handled: Boolean);
procedure SetLabelCaption( ANum: Integer );
Label1.Caption := IntToStr( ANum );
var
begin
if Msg.message = WM_MOUSEWHEEL then
Rotation := HIWORD( Msg.wParam );
Inc( Num )
Dec( Num );
Handled := True;
end;

4. 執行。 我剛實際這樣做了一次可以運作,用 D7,祝好運~


編輯記錄
TWY 重新編輯於 2010-01-15 09:00:41, 註解 無‧
TWY 重新編輯於 2010-01-15 09:01:35, 註解 無‧
TWY 重新編輯於 2010-01-15 09:03:01, 註解 用 [code delphi] [/code] 區段包起來的碼總是怪怪的,所以移掉...‧
TWY 重新編輯於 2010-01-17 21:15:19, 註解 原來<>這符號並不會出現,且可能破壞欲顯示程式碼區塊。。。‧
demon740405
一般會員


發表:6
回覆:10
積分:3
註冊:2005-12-10

發送簡訊給我
#6 引用回覆 回覆 發表時間:2010-01-16 14:47:52 IP:218.174.xxx.xxx 未訂閱
最近因為也需要用到WHEEL所以爬到這個文~

請問一下~
我覺得兩位大大回覆的內容看起來大至是一樣的
老大仔大大說要宣告 Num 您卻說不行
而TWY大大的程式也是把 Num 給宣告上去
但給分卻是給TWY大大
這樣就結案了
結案結的有點隨便
明明是一樣的東西
怎麼給結案的人卻是後者?

先說明一下~
我沒有偏袒誰
也不是說TWY大大的不是
只是感覺上兩位大大給的答案明明是一樣的
但給分、結案的對象卻不是前者
這樣沒多加說明就結了案
感覺不怎麼好...
------
**
何須劍道爭鋒?
千人指,萬人封;
可問江湖鼎峰?
三尺秋水塵不染,
天 下 無 雙
**
TWY
高階會員


發表:2
回覆:133
積分:152
註冊:2009-09-02

發送簡訊給我
#7 引用回覆 回覆 發表時間:2010-01-17 21:10:39 IP:220.132.xxx.xxx 訂閱
老大仔 大大,若有冒犯望請海涵。
的確,老大仔精確點出了碼的不足問題,但 mp394681143 問題卻未能解決。提問者表示自己新學,我想是因為對 Delphi 工具如何操作不熟悉導致,所以補充了元件托拉放順序說明,想必提問者應該應已解決了,實無搶分之意,敬請各方見諒。
===================引 用 demon740405 文 章===================
老大仔大大說要宣告 Num 您卻說不行
而TWY大大的程式也是把 Num 給宣告上去
但給分卻是給TWY大大
這樣就結案了

編輯記錄
TWY 重新編輯於 2010-01-17 21:13:10, 註解 無‧
老大仔
尊榮會員


發表:78
回覆:837
積分:1088
註冊:2006-07-06

發送簡訊給我
#8 引用回覆 回覆 發表時間:2010-01-18 08:19:26 IP:59.120.xxx.xxx 未訂閱
TWY大大您言重了~代誌沒價泥大條啦~

在這個地方
大家都是來提問 解惑的
只要幫人家解決了問題就好了
沒關係的~^^

可能是D大覺得為何答案一樣
卻給後者結案
有點有失標準吧^^

還有~小弟也是個新手
您稱我為大大
小弟我擔當不起呀~^^

===================引 用 TWY 文 章===================
老大仔 大大,若有冒犯望請海涵。
的確,老大仔精確點出了碼的不足問題,但 mp394681143 問題卻未能解決。提問者表示自己新學,我想是因為對 Delphi 工具如何操作不熟悉導致,所以補充了元件托拉放順序說明,想必提問者應該應已解決了,實無搶分之意,敬請各方見諒。
===================引 用 demon740405 文 章===================
老大仔大大說要宣告 Num 您卻說不行
而TWY大大的程式也是把 Num 給宣告上去
但給分卻是給TWY大大
這樣就結案了
?
系統時間:2024-04-27 7:41:35
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!