文件管理(三)

2016-01-29 14:01 7 1 收藏

文件管理(三),文件管理(三)

【 tulaoshi.com - Delphi 】

 

2. 画出每个自画项目 

  这在TabSet的OnDrawTab事件处理过程中完成。这一事件处理过程的参数中包含了待画项目索引、画板、待画区域、是否被选中等。这里我们只利用了前三个参数。事实上利用最后一个参数,我们可以对被选中的标签进行一些特殊的视觉效果处理。这一工作就留给读者自己去完成。 

procedure TFMForm.DriveTabSetDrawTab(Sender: TObject; TabCanvas: TCanvas;

R: TRect; Index: Integer; Selected: Boolean);

var

Bitmap: TBitmap;

begin

Bitmap := TBitmap(DriveTabSet.Tabs.Objects[Index]);

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)

with TabCanvas do

begin

Draw(R.Left, R.Top + 4, Bitmap);

TextOut(R.Left + 2 + Bitmap.Width, R.Top + 2, DriveTabSet.Tabs[Index]);

end;

end; 

6.4.5 文件管理基本功能的实现 

(本文来源于图老师网站,更多请访问http://www.tulaoshi.com/delphi/)

  在子窗口的File菜单中,定义了文件管理的基本功能,它们是:

  ● Open :打开或运行一个文件( 从文件列表框双击该文件可实现同样效果)

● Move :文件在不同目录间的移动

  ● Copy :文件拷贝

  ● Delete :文件删除

  ● Rename :文件更名

  ● Properties :显示文件属性 

6.4.5.1 文件打开 

  文件打开功能可以运行一个可执行文件,或把文件在与之相关联的应用程序中打开。文件总是与创建它的应用程序相关联,这种关联可以在Windows的文件管理器中修改。要注意的是:文件的关联是以后缀名为标志的,因而对一个文件关联方式的修改将影响所有相同后缀名的文件。

  文件打开功能实现的关键是利用了Windows API函数ShellExecute 。由于Windows API函数的参数要求字符串类型是PChar,而Delphi中一般用的是有结束标志的String类型,因此为调用方便我们把这一函数进行了重新定义如下。 

function ExecuteFile(const FileName, Params, DefaultDir: String;

ShowCmd: Integer): THandle;

var

zFileName, zParams, zDir: array[0..79] of Char;

begin

Result := ShellExecute(Application.MainForm.Handle, nil,

StrPCopy(zFileName, FileName), StrPCopy(zParams, Params),

StrPCopy(zDir, DefaultDir), ShowCmd);

end;

  以上函数在fmxutils单元中定义。fmxutils是一个自定义代码单元。

  有关ShellExecute中各参数的具体含义读者可查阅联机Help文件。

  StrPCopy把一个Pascal类型的字符串拷贝到一个无结束符的PChar类型字符串中。

  在子窗口的Open1Click事件处理过程中: 

procedure TFMForm.Open1Click(Sender: TObject);

begin

with FileList do

ExecuteFile(FileName, '', Directory, SW_SHOW) ;

end;

  如果FileList允许显示目录的话( 即FileType属性再增加一项ftDirectory),那么对于一个目录而言,打开的含义应该是显示它下边的子目录和文件。程序修改如下。 

  procefure TFMForm.Open1Click(Sender: Tobject);

begin

With FileList do

begin

if HasAttr(FileName,faDirectory) then

DirectoryOutline.Directory := FileName

else

ExecuteFile(FileName,' ' ,Directory,SW_SHOW);

end;

end; 

其中HasAttr是一个fmxutils单元中的自定义函数,用于检测指定文件是否具有某种属性。 

function HasAttr(const FileName: String; Attr: Word): Boolean;

begin

Result := (FileGetAttr(FileName) and Attr) = Attr;

end; 

6.4.5.2 文件拷贝、移动、删除、更名 

  文件拷贝的关键是使用了以文件句柄为操作对象的文件管理函数,因而提供了一种底层的I/O

来源:http://www.tulaoshi.com/n/20160129/1492289.html

延伸阅读
手机文件管理软件新建文件方法   1)打开手机文件管理软件,在软件界面点击下方+图标。    2)在弹出新建对话框有三种,文件夹,文件,拍照。小编选择的是拍照。    3)选择照片名称,点击确定,这样照片也就创建成功了。  
标签: windows 操作系统
一、找到“资源管理器” 俗话说:“条条大路通罗马”,虽然启动资源管理器的方法有多种,但我们最常用的还是利用开始菜单进行:单击“开始→所有程序→附件”(表示单击“开始”菜单,然后再把指针移向“所有程序”,稍等片刻便会弹出二级菜单,再把指针平移到二级菜单上,再在二级菜单上把指针移到“附件”上,以后表达方式与此类...
小米文件管理器试用 MIUI作为第三方ROM受到了全世界Android用户的欢迎,这个ROM不仅仅有着漂亮的UI界面,更改进了大量内置应用程序,让Android手机更适合中国用户使用,在MIUI的大量定制应用中,其中小米的文件管理器就是其中非常有特色的。 小米文件管理器 小米文件管理器按照文件类型进行扫描归类,让用户在查找文件时直观、快捷,同时...
快车Flashget的文件管理功能 不断提速的宽带网络和不断提升性能的下载工具,为广大网友带来了更好的极速体验。在众多下载工具中,快车是最为出众、最受欢迎的一款,它不仅在于下载速度上的表现,不仅提供强大而丰富的功能,而且更在于下载后对文件的管理功能。 当下载完成列表中的资源越来越多时,对它们的管理就成了一个不小的问题...
功能说明: Hex/ASCII的看文件程序。 语 法: gitview [-bchilv][文件]  补充说明: gitview指令可用于观看文件的内容,它会同时显示十六进制和ASCII格式的字码。 参 数:   -b 单色模式,不使用ANSI控制码显示彩色。   -c 彩色模式,使用ANSI控制码显示色彩。   -h 在线帮助。   -i ...