⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fm_openproject.pas

📁 档案资料管理系统
💻 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 + -