编程创建和删除文件夹覆盖
民生视野 2021-08-24 13:36 字号: 大 中 小
本实例介绍如何在程序中创建文件夹,并且可以将新创建的文件夹删除到回收站中。
向窗体上添加两个TButton组件,一个用于创建新的文件夹,另一个用于删除新创建的文件夹,设计完成的窗体如图1所示。
498)this.style.width=498;\">
图1 主界面
首先在程序的uses段中添加对ShellApi的引用,另外还要在“创建”按钮的响应过程中添加下列代码:
procedure nCreateClick(Sender: TObject);
begin
CreateDirectory(PChar(ExtractFilePath(ParamStr(0))+’Test’),nil);
end;
程序运行初期就会执行CreateDirectory(PChar(ExtractFilePath(ParamStr(0))+’Test’),nil)语句,在程序实例所在的目录中创建一个子目录test。
在程序运行过程中,单击“删除”按钮就可以将新创建的test子目录删除,响应代码如下:
procedure nDeleteClick(Sender: TObject);
var
T:TSHFileOpStruct;
P:String;
begin
P:=ExtractFilePath(ParamStr(0))+’Test’;
with T do
begin
Wnd:=0;
wFunc:=FO_DELETE;
pFrom:=PChar(P);
pTo:=nil;
fFlags:=FOF_ALLOWUNDO+FOF_NOERRORUI;
hNameMappings:=nil;
lpszProgressTitle:=’正在删除文件夹’;
fAnyOperationsAborted:=False;
end;
SHFileOperation(T);
end;程序通过填充TSHFileOpStruct 类型的对象T的属性来设置本次删除操作可以Undo,当然最终的删除操作是通过SHFileOperation(T)来完成的。如果SHFileOperation函数返回值为0,就表示删除成功,否则表示删除失败。
如果用户在程序中想要直接删除test子目录,可以直接通过调用RemoveDirectory (Pchar(ExtractFilePath(ParamStr(0))+’Test’))语句来实现。
程序代码如下:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ShellApi;
type
TForm1 = class(TForm)
btnCreate: TButton;
btnDelete: TButton;
procedure btnCreateClick(Sender: TObject);
procedure btnDeleteClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure nCreateClick(Sender: TObject);
begin
CreateDirectory(PChar(ExtractFilePath(ParamStr(0))+’Test’),nil);
end;
procedure nDeleteClick(Sender: TObject);
var
T:TSHFileOpStruct;
P:String;
begin
P:=ExtractFilePath(ParamStr(0))+’Test’;
with T do
begin
几大步杀到篮下完成暴扣。之后的一个回合 Wnd:=0;
wFunc:=FO_DELETE;
pFrom:=PChar(P);
pTo:=nil;
fFlags:=FOF_ALLOWUNDO+FOF_NOERRORUI;
hNameMappings:=nil;
lpszProgressTitle:=’正在删除文件夹’;
fAnyOperationsAborted:=False;
end;
SHFileOperation(T);
//RemoveDirectory(PChar(ExtractFilePath(ParamStr(0))+’Test’));
end;
end.保存文件,然后按F9键运行程序,程序运行的初始画面如图2所示。 498)this.style.width=498;\">
图2 程序运行的初始画面
单击“创建”按钮就会在程序实例所在的目录中创建一个子目录test,单击“删除”按钮就可以将新创建的test子目录删除。本实例介绍了如何创建文件夹,并且为删除文件夹提供了两种途径——一种是删除文件夹到回收站中,另外一种就是直接删除。
查看本文来源
南通哪家男科医院南平治疗白癜风的医院
避孕药什么牌子好
-
-
中指院12月百城房价环比涨07连涨19月搭配
中指院:12月百城房价环比涨0.7%连涨19月12月中国住房价格环比...
2020-05-30 | 民生视野
-
-
水货状元那么多希望不要再多富尔茨一个了搭配
水货状元那么多,希望不要再多富尔茨一个了!富尔茨已经不...
2020-05-29 | 民生视野
-
-
加快重建美好家园王荣平在阜宁受灾镇村调研
加快重建美好家园—王荣平在阜宁受灾镇村调研6月28日上午,...
2019-12-17 | 民生视野
-
-
区人社局多举措开展城居保收缴工作
区人社局多举措开展城居保收缴工作城乡居民基本养老保险工...
2019-12-17 | 民生视野
-
-
包头市民政局召开会议部署2017年人大代
包头市民政局召开会议部署2017年人大代表、政协委员建议提案...
2019-07-15 | 民生视野
-
-
山东聊城市明确今年养老服务机构建设目标任
山东:聊城市明确今年养老服务机构建设目标任务2月21日,聊...
2019-07-13 | 民生视野