- PR -

スプリットウィンドウの同時スクロール

1
投稿者投稿内容
Kuma
ベテラン
会議室デビュー日: 2001/12/20
投稿数: 66
投稿日時: 2003-06-25 09:04
みなさんいつもお世話になっています。

MFCでSplitWindowを使って、左右同時スクロールするものを作りたいと考えています。
処理をしたいビュークラスの WM_VSCROLL の処理(OnVScroll)をオーバーライドして、もう一つのビューに
pWnd->SendMessage(
WM_VSCROLL, MAKELONG(nSBCode, nPos), (LPARAM)NULL);
を投げかけています。

PageUpやPageDown、スライダ以外のスクロールコントロールをクリックさせてのスクロールは同期しています。
しかし、スライダを一番下に持って行き、スライダ部分を上にドラックすると、該当のビューのみ5行ほど単独で動きます。
他方のビューの行は、その後動き出しずれを保ったまま動きます。

また、スライダを同期したまま中間地点におきスライダ部をクリックすると、他方のビューのみが数行ずれます。

何かのイベントに対する処理が足りないかと思い、色々調べてみましたが見つけることが出来ませんでした。
お知恵をいただけないでしょうか?
Kuma
ベテラン
会議室デビュー日: 2001/12/20
投稿数: 66
投稿日時: 2003-06-25 11:14
自己レスです。

結局、右と左の行数が違っていました。
どうもCEditViewは1145バイトで勝手に次の行にさせられるようです。
この所為で実に5行、右が増えていました。

CEditViewの「1145バイト/行」制限ってのは、中途半端な数字のような気がしますが...

いずれにせよ、お騒がせしました。
1

スキルアップ/キャリアアップ(JOB@IT)