如何在Delphi中选择文件

M.G*_*mez 1 delphi vcl

我需要制作'图形用户界面',我需要一些VCL组件来选择一些文件.

此组件必须选择文件,但用户不必放置文件的名称.

我正在搜索信息,但没有任何帮助我.

fan*_*cco 10

Vcl.Dialogs.TOpenDialog可用于此目的.

另请参见UsingDialogs.

procedure TForm1.Button1Click(Sender: TObject);
var
  selectedFile: string;
  dlg: TOpenDialog;
begin
  selectedFile := '';
  dlg := TOpenDialog.Create(nil);
  try
    dlg.InitialDir := 'C:\';
    dlg.Filter := 'All files (*.*)|*.*';
    if dlg.Execute(Handle) then
      selectedFile := dlg.FileName;
  finally
    dlg.Free;
  end;

  if selectedFile <> '' then
    <your code here to handle the selected file>
end;
Run Code Online (Sandbox Code Playgroud)

请注意,此处的示例假定将一个TButtonnamed Button1删除到表单,并将该 TForm1.Button1Click(Sender: TObject)过程分配给按钮OnClick事件.


TOpenDialog.Filter通过使用|(管道)字符将它们连接在一起,可以在属性中使用多个文件扩展名,如下所示:

'AutoCAD drawing|*.dwg|Drawing Exchange Format|*.dxf'
Run Code Online (Sandbox Code Playgroud)