TStringGridのスクロールバーメッセージ取得

解決


VER185  2012-08-02 20:44:43  No: 42684

こんにちは。

TStringGridのスクロールバーメッセージを取得しようとしています。

SB_PAGEDOWN
SB_PAGEUP
SB_LINEDOWN
SB_LINEUP
SB_TOP
SB_BOTTOM

これらについては取得できました。

しかし、ボックスドラッグのメッセージ(SB_THUMBTRACK)が
スクロールバーポジションSB_TOPの状態で最初に移動させようと
した1回のみしか発生しません。

SB_THUMBTRACKの発生するタイミングがわからないので
教えていただけないでしょうか?

よろしくお願いします。


Mr.XRAY  2012-08-03 02:48:40  No: 42685

こんにちは.Mr.XRAYです.

>SB_THUMBTRACKの発生するタイミングがわからないので
>教えていただけないでしょうか?

発生するタイミングですよね?
SB_THUMBTRACKは,以下のページの図で,「スクロールボックス」をドラッグした時に発生します.
えっ!? 違う? ...  そうですよね.

http://www.isok.jp/comp/pea/window.htm


VER185  2012-08-03 03:18:03  No: 42686

Mr.XRAYさん、ありがとうございます。

仰る通りです。
メッセージが発生しないということはありえないので
再度ソースをチェックしたところ重大なミスに気がつきました。

メッセージを取得する際にWParamをHIWORDで
チェックしていませんでした。

ポジションが0の時にしかメッセージが取得できないというのも
そのせいでした。

同じくSB_PAGEDOWN等にはポジション情報が含まれないので、
wparamのまま処理できてしまっていたようです。

大変お騒がせしました。


VER185  2012-08-03 03:19:13  No: 42687

「解決」チェックを忘れていました。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加