[リストへもどる]
一括表示

投稿時間:2003/02/12(Wed) 11:35
投稿者名:バグバグ
URL :
タイトル:
col幅変更でtoprowのズレ
初めまして、いつもVBレスキューさんにはお世話になっています。

AllowUserResizing = 1
にしてあるグリッドで、一番下にスクロールさせた後にマウスでcol幅を変更すると、
表示が1行上にずれてしまうのです。

一応MouseMove時に正しく直すようにしてますが、見栄えもよくないので
なんとかずれないようにしたいのですが、詳しい方御願いします。

投稿時間:2003/02/12(Wed) 13:31
投稿者名:バグバグ
URL :
タイトル:
Re: col幅変更でtoprowのズレ
自己レスです。
Timerを使って合わせると、MouseMoveよりイイ感じですが、
ずれた後に戻る動きが見えてしまいます。

なぜ一番下の時のみ1行ずれるのかが分かりません。
VB6.0(SP3)のバグでしょうか?

投稿時間:2003/02/12(Wed) 14:10
投稿者名:花ちゃん
Eメール:
URL :
タイトル:
Re^2: col幅変更でtoprowのズレ
バグかどうかは知りませんが?
マウスカーソルの位置をTimerイベントとGetCursorPosを使って監視し、
固定行に有る間は下記のように固定しておけば見た感じもOKかと思いますが
座標系の計算がちとめんどうです。

    If (固定行の位置にある場合) Then
        MSFlexGrid1.TopRow = myTop
    Else
        myTop = MSFlexGrid1.TopRow
    End If

投稿時間:2003/02/12(Wed) 14:45
投稿者名:バグバグ
URL :
タイトル:
Re^3: col幅変更でtoprowのズレ
そうでした、GetCursorPosがありました^^

早速試してみます。

ありがとうございました。