DrawGridのスクロール後のFocus

解決


笹団子  2012-06-03 15:36:54  No: 42410

画像を含むデータベースの検索用に、DrawGridにサムネイル表示をしました。
DrawGridに一画面で描写しきれない数のイメージを描写すると、画面の最終行には、画面に収まる範囲で(たとえば画像の上半分などが)描写されます。
この半端な表示のセルをクリックすると、一画面分スクロールをして、フォーカスは、クリックしたセルではなく、クリックしたセルの列の表示画面の最終行に移ってしまいます。
スクロール後も、クリックしたセルにフォーカスを保持する方法を教えてください。


KHE00221  2012-06-03 17:50:11  No: 42411

簡単なのはこれかな
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;


笹団子  2012-06-08 00:42:12  No: 42412

KHE00221さん、ありがとうございました。
出張でご返事、御礼が遅くなりました。
教えていただいた方法で、改修を進めます。


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

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






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