4

デルファイ 2007.

画面に収まるよりも多くの行を持つ TGrid があり、グリッドの高さは、下部に部分的に描画された行があるようなものです。この部分的な行をクリックすると、ジャンプして完全に表示されます (Grids.pas の「ClampInView」というプロシージャを使用)。しかし、それは止まりません。マウスが新しい部分的に描画された行の上にあるので、それもジャンプします。

最終的な効果は、部分的に描画された行をクリックすると、垂直列のセルの選択が開始され、一番下まで (またはマウスを離すまで) 回転することです。

私はこれを、100行の単一のグリッドとコードなしの新しいwinformsプロジェクトで複製したので、コードで間違っていることではないと確信しています。

私が実際のコードで持っているフォームはドラッグアンドドロップタイプの動作をしているので、それは私にとって悪いことです.0.1秒後に部分的な行をクリックして離すと、セル内のアイテムがピックアップされ、約50行下にドロップされます. これは、セルをクリックしたときに予想されることではありません。

これを修正/回避する方法について何か提案はありますか?

4

2 に答える 2

2

ユーザーが「悪い」場所をクリックした場合、グリッドで MouseDown をオーバーライドし、継承された MouseDown を呼び出さないでください。

于 2009-04-17T10:46:13.293 に答える