📄 fm_openproject.pas
字号:
unit FM_OpenProject;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Buttons,ComCtrls;
type
TFM_OpenProject1 = class(TForm)
Label1: TLabel;
ListBox1: TListBox;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
procedure FormCreate(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure GetDirectories(Tree: TTreeView; Directory: string; Item: TTreeNode; IncludeFiles: boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
FM_OpenProject1: TFM_OpenProject1;
implementation
uses
FM_Main;
{$R *.dfm}
procedure TFM_OpenProject1.FormCreate(Sender: TObject);
var
ProjectName:TSearchRec;
ProjectNamePath:string;
begin
ProjectNamePath:=ExtractFilePath(Application.ExeName)+'\'+'Project'+'\';
if ProjectNamePath[length(ProjectNamePath)] <> '\' then
ProjectNamePath := ProjectNamePath+ '\';
if FindFirst(ProjectNamePath + '*.*',faDirectory,ProjectName) = 0 then
begin
repeat
if (ProjectName.Attr and faDirectory = faDirectory) and (ProjectName.Name[1] <> '.') then
begin
if (ProjectName.Attr and faDirectory > 0) then
ListBox1.Items.Add(ProjectName.Name)
end;
until FindNext(ProjectName) <> 0;
FindClose(ProjectName);
end;
end;
procedure TFM_OpenProject1.BitBtn1Click(Sender: TObject);
var
Node:TTreeNode;
begin
if ListBox1.ItemIndex<>-1 then
begin
Close;
CheckBoxSelect:=False;
FM_Main1.TreeView1.Items.Clear;
Node:=FM_Main1.TreeView1.Items.Add(nil,ListBox1.Items.Strings[listbox1.ItemIndex]);
GetDirectories(FM_Main1.TreeView1,ExtractFilePath(Application.ExeName)+'\'+'Project'+'\'+ListBox1.Items.Strings[listbox1.ItemIndex],Node,True);
end
else
Application.MessageBox('请选择一项需要打开的项目','真诚提醒您',MB_OK or MB_ICONINFORMATION)
end;
procedure TFM_OpenProject1.GetDirectories(Tree: TTreeView;
Directory: string; Item: TTreeNode; IncludeFiles: boolean);
var
SearchRec: TSearchRec;
ItemTemp: TTreeNode;
begin
FM_Main1.TreeView1.Items.BeginUpdate;
if Directory[length(Directory)] <> '\' then
Directory := Directory + '\';
if FindFirst(Directory + '*.',faDirectory,SearchRec) = 0 then
begin
repeat
if (SearchRec.Attr and faDirectory = faDirectory) and (SearchRec.Name[1] <> '.') then
begin
if (SearchRec.Attr and faDirectory > 0) then
Item := Tree.Items.AddChild(Item,SearchRec.Name);
ItemTemp := Item.Parent;
GetDirectories(FM_Main1.Treeview1,Directory + SearchRec.Name,Item,IncludeFiles);
Item := ItemTemp;
end
else if IncludeFiles then
if SearchRec.Name[1] <> '.' then
Tree.Items.AddChild(Item,SearchRec.Name);
until FindNext(SearchRec) <> 0;
FindClose(SearchRec);
end;
FM_Main1.TreeView1.Items.EndUpdate;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -