画像を含むデータベースの検索用に、DrawGridにサムネイル表示をしました。
DrawGridに一画面で描写しきれない数のイメージを描写すると、画面の最終行には、画面に収まる範囲で(たとえば画像の上半分などが)描写されます。
この半端な表示のセルをクリックすると、一画面分スクロールをして、フォーカスは、クリックしたセルではなく、クリックしたセルの列の表示画面の最終行に移ってしまいます。
スクロール後も、クリックしたセルにフォーカスを保持する方法を教えてください。
簡単なのはこれかな
var
SaveCol,SaveRow: Integer;
procedure TForm1.StringGrid1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
SaveCol := StringGrid1.Col;
SaveRow := StringGrid1.Row;
end;
procedure TForm1.StringGrid1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
StringGrid1.Col := SaveCol;
StringGrid1.Row := SaveRow;
end;
KHE00221さん、ありがとうございました。
出張でご返事、御礼が遅くなりました。
教えていただいた方法で、改修を進めます。
ツイート | ![]() |