Delphi 7 opendialog在Windows 10中使用时,文件名中有垃圾

问题描述 投票:2回答:1

这是我在这里的第一篇文章,所以如果我做得不好,请原谅我。

我正在Windows 10计算机上使用Delphi 7。当我使用TOpenDialog时,关闭时在filename属性中出现垃圾。这就是我得到的þƒ‡uÔÁ™ßðæRw。我创建了一个带有按钮和编辑框的简单表单,以在此处显示问题。有人可以帮我吗。

下面的代码。

    procedure TForm1.Button1Click(Sender: TObject);
    begin
      opendialog1.Execute();
    end;

    procedure TForm1.OpenDialog1Close(Sender: TObject);
    begin
      edit1.Text := opendialog1.FileName;
    end;
delphi delphi-7
1个回答
6
投票

不要使用对话框的OnClose事件。在拥有文件名数据的基础对话框对象被破坏之后,将调用该方法。

Execute返回时,代替对话框。

procedure TForm1.Button1Click(Sender: TObject);
begin 
  if opendialog1.Execute() then
    edit1.Text := opendialog1.FileName;
end;

注意,您还必须测试Execute的返回值以处理用户取消对话框的操作。

© www.soinside.com 2019 - 2024. All rights reserved.