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

Form的VertScrollBar問題

尚未結案
lin11112
初階會員


發表:42
回覆:83
積分:25
註冊:2003-02-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2010-04-23 15:09:39 IP:122.147.xxx.xxx 訂閱
請問各位先進
如何使用滑鼠的滾輪,當上下滾時,可以觸發Form自動出現的VertScrollBar的上下移動,就如同直接用滑鼠去點擊VertScrollBar的上下的方向鍵一樣
不知小弟這樣的描述是否清楚呢
感謝指導
careychen
尊榮會員


發表:41
回覆:580
積分:959
註冊:2004-03-03

發送簡訊給我
#2 引用回覆 回覆 發表時間:2010-04-26 06:43:40 IP:60.248.xxx.xxx 訂閱
 HI, 您可以在 Form 的 OnMouseWheel 中加入如下的程式碼,就可以使用滾輪了


[code delphi]
procedure TForm1.FormMouseWheel(Sender: TObject; Shift: TShiftState; WheelDelta: Integer;
MousePos: TPoint; var Handled: Boolean);
var Code: Cardinal;
I: Integer;
begin
if Self.VertScrollBar.IsScrollBarVisible then
begin
Handled := true;

if WheelDelta > 0 Then
Code := SB_LINEUP
else
Code := SB_LINEDOWN;

// Mouse.WheelScrollLines 代表要捲動的行數
// *3 的意思是代表要放大捲動的量,請自行調整
for I:= 1 to Mouse.WheelScrollLines*3 Do
Self.Perform(WM_VSCROLL, Code, 0);

Self.Perform(WM_VSCROLL, SB_ENDSCROLL,0);
end;
end;
[/code]

===================引 用 lin11112 文 章===================
請問各位先進
如何使用滑鼠的滾輪,當上下滾時,可以觸發Form自動出現的VertScrollBar的上下移動,就如同直接用滑鼠去點擊VertScrollBar的上下的方向鍵一樣
不知小弟這樣的描述是否清楚呢
感謝指導
------
價值的展現,來自於你用哪一個角度來看待它!!
編輯記錄
careychen 重新編輯於 2010-04-26 06:49:15, 註解 無‧
lin11112
初階會員


發表:42
回覆:83
積分:25
註冊:2003-02-17

發送簡訊給我
#3 引用回覆 回覆 發表時間:2010-04-26 10:32:37 IP:122.147.xxx.xxx 訂閱
careychen您好 :
我是在Form中並排放置數個MDIForm
當MDIForm超過Form的寬度時VSCROLL會自動出現
我是希望利用滑鼠滾輪上下捲動時可同時捲動並排的MDIForm上下捲動
我使用careychen大大提供的方式
可以抓到滾輪的事件
但仍無法使MDIForm捲動
但如果利用滑鼠點擊VSCROLL則並排的MDIForm則可以上下捲動
麻煩大大的指導
syntax
尊榮會員


發表:26
回覆:1139
積分:1258
註冊:2002-04-23

發送簡訊給我
#4 引用回覆 回覆 發表時間:2010-05-04 09:11:22 IP:59.125.xxx.xxx 訂閱
同時對兩個 MDI 用 SendMessage MOUSE SCROLL
===================引 用 lin11112 文 章===================
careychen您好 :
我是在Form中並排放置數個MDIForm
當MDIForm超過Form的寬度時VSCROLL會自動出現
我是希望利用滑鼠滾輪上下捲動時可同時捲動並排的MDIForm上下捲動
我使用careychen大大提供的方式
可以抓到滾輪的事件
但仍無法使MDIForm捲動
但如果利用滑鼠點擊VSCROLL則並排的MDIForm則可以上下捲動
麻煩大大的指導
lin11112
初階會員


發表:42
回覆:83
積分:25
註冊:2003-02-17

發送簡訊給我
#5 引用回覆 回覆 發表時間:2010-05-04 13:02:37 IP:122.147.xxx.xxx 訂閱
syntax 大大可能誤會小弟的意思了
小弟並非要MDIForm的內容捲動
而是要使Form中數個排列的MDIForm一起向上或向下捲動
謝謝


===================引 用 syntax 文 章===================
同時對兩個 MDI 用 SendMessage MOUSE SCROLL
===================引 用 lin11112 文 章===================
careychen您好 :
我是在Form中並排放置數個MDIForm
當MDIForm超過Form的寬度時VSCROLL會自動出現
我是希望利用滑鼠滾輪上下捲動時可同時捲動並排的MDIForm上下捲動
我使用careychen大大提供的方式
可以抓到滾輪的事件
但仍無法使MDIForm捲動
但如果利用滑鼠點擊VSCROLL則並排的MDIForm則可以上下捲動
麻煩大大的指導
系統時間:2024-03-29 19:16:51
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!