我在 Windows 10 上使用 Delphi Berlin。我需要在基于 tStringGrid 的 tForm 上使用 tOpenDialog。
当我双击与打开对话框上的固定列或行重叠的文件时,onFixedCellClick 事件会在打开对话框消失后立即自动触发。在下图中,文件位于固定行的同一位置,即第一行。
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
OpenDialog1: TOpenDialog;
procedure FormClick(Sender: TObject);
procedure StringGrid1FixedCellClick(Sender: TObject; ACol, ARow: Integer);
procedure FormCreate(Sender: TObject);
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.Options := StringGrid1.Options + [goFixedColClick, goFixedRowClick];
end;
procedure TForm1.FormClick(Sender: TObject);
begin
OpenDialog1.Execute;
end;
procedure TForm1.StringGrid1FixedCellClick(Sender: TObject; ACol, ARow: Integer);
begin
Caption := '';
end;
在大多数情况下,我可以通过移动对话框窗口或单击文件并单击打开按钮来处理此问题,但我不能保证其他将使用它的人会这样做。
是什么原因,我该如何解决这个问题?