delphi – 根据预定义的文件名过滤打开的对话框
发布时间:2020-12-15 09:12:30 所属栏目:大数据 来源:网络整理
导读:问题1: 我想过滤只显示某个文件名的打开对话框.文件名在TEdit框中给出.这是我的代码,但它仍然显示目录中的整个文件. 程序TForm1.ButtonLoad(发件人:TObject); var openDialog: TOpenDialog; i: Integer;begin TFBusy(sender); openDialog := TOpenDialog.C
>问题1:
我想过滤只显示某个文件名的打开对话框.文件名在TEdit框中给出.这是我的代码,但它仍然显示目录中的整个文件. 程序TForm1.ButtonLoad(发件人:TObject); var openDialog: TOpenDialog; i: Integer; begin TFBusy(sender); openDialog := TOpenDialog.Create(self); openDialog.Title := 'Browsing desired file,Browse for '+ TEdit1.Text; openDialog.InitialDir := strMyDoc; openDialog.FileName := TEdit1.Text; openDialog.Filter := 'All file extension|*.*'; try if not openDialog.Execute then begin mem0.lines.add('Browse file to load was cancelled'); end; finally for i := 0 to openDialog.Files.Count - 1 do //i do here with the file end; openDialog.Free; TFReady(sender); end; 虽然打开对话框上的文件名显示正确,但它仍然显示目录中的整个文件. 问题2: 我可以使用特定前缀过滤文件吗? 最好的祝愿, 解决方法
它会显示所有文件,因为您明确告诉它:
openDialog.Filter := 'All file extension|*.*'; 单独设置文件名不会过滤打开的对话框. 你可以使用这样的过滤器: openDialog.Filter := 'Flower Files|FLOWER-*.*'; 显示前缀为“FLOWER-”的所有文件.如果要过滤除一个特定文件名以外的所有文件名,只需在过滤器的第一部分中省略通配符: openDialog.Filter := 'Flower-2230 File|FLOWER-2230.*'; 但是(正如David在他的评论中指出的那样)为什么在将选择限制为单个文件时有一个打开的对话框? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |