Procedure DirToSubFileList(var Directory:string; var FileList:TStringList);
var
Fillter:string;
sr: TSearchRec;
FileAttrs: Integer;
begin
FileAttrs := faReadOnly+ faHidden+ faSysFile+ faVolumeID + faDirectory+ faArchive+ faAnyFile;
Fillter:=Directory+'\*';
if FindFirst(Fillter, FileAttrs, sr) = 0 then
begin
repeat
if (sr.Name<>'.')and(sr.Name<>'..') then
FileList.Add(Directory+'\'+sr.Name);
until FindNext(sr) <> 0;
FindClose(sr);
end;
end;
var
Fillter:string;
sr: TSearchRec;
FileAttrs: Integer;
begin
FileAttrs := faReadOnly+ faHidden+ faSysFile+ faVolumeID + faDirectory+ faArchive+ faAnyFile;
Fillter:=Directory+'\*';
if FindFirst(Fillter, FileAttrs, sr) = 0 then
begin
repeat
if (sr.Name<>'.')and(sr.Name<>'..') then
FileList.Add(Directory+'\'+sr.Name);
until FindNext(sr) <> 0;
FindClose(sr);
end;
end;
解决方案 »
- 把16进制字符串转字符串怎么写算法?
- 冗余代码
- 关于MDI的小问题,以前从没接触MDI编程!!!!!!快进来要分吧!
- 读取htm页面,修改后用SaveToFile写入,结果中文变乱码,怎么办??
- △▲△▲△Update语句中能否有From、Group By、Order By等子句?△▲△▲△
- 關於搜索文件的源碼
- 截取DELPHI出錯信息,在寫入log文件中,有沒有通用方法?
- 如何知道ScrollBox滚动条已经到达底部
- 请问如何用delphi实现象untraedit那样的树型目录单呀
- 150分求解:在DELPHI中如何设置鼠标指针的位置?在VB中是用SetCursorPos的。
- 请教怎么读出交换机中的用户话费(只提供两个端口)?
- 请问一下如何将枚举数据类型列在下拉列表中,如(A4,A5,LETTER,)tcombobox
//'菜单'解构成'树'(Recursion为递归)*********************************************
//==============================================================================
procedure MenuToTree(Menu: TMenu; var Tree: TTreeView; DestinationNode: TTreeNode; Expand: Boolean);
procedure RecursionTree(MenuItem: TMenuItem; TreeNode: TTreeNode);
var i: Integer;
Node: TTreeNode;
begin
for i:=1 to GetMenuItemCount(MenuItem.Handle) do
if MenuItem.Items[i-1].Caption<>'-' then
begin
Node := Tree.Items.AddChild(TreeNode,MenuItem.Items[i-1].Caption);
Node.Data := Pointer(MenuItem.Items[i-1].Name);
RecursionTree(MenuItem.Items[i-1],Node);
end;
end;
var i: Integer;
Node: TTreeNode;
begin
for i:=1 to GetMenuItemCount(Menu.Handle) do
begin
Node := Tree.Items.AddChild(DestinationNode,Menu.Items[i-1].Caption);
Node.Data := Pointer(Menu.Items[i-1].Name);
RecursionTree(Menu.Items[i-1],Node);
if Expand then Tree.FullExpand else Tree.FullCollapse;
end;
end;