김영대님 감사합니다.
하지만 저는 아직 초보라 잘 안되네요.
탐색기처럼 트리뷰를 만들어야 됩니다.(정말 똑같이요.)
이미지모양, 디렉토리, 드라이브, 네트워크환경 등등...
제가 만든 프로그램을 올립니다. 하지만 C:드라이브 밖에 않나와요.
폼이 드면서 모든게 다 나와야 하는데..(제가 만든 프로그램은 속도도 느려요)
빠르면서 모든게 다 나타나게 할 수 없을까요?(제가 만든 프로그램을 올립니다.)
조언 부탁드립니다.
unit InputForm;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ImgList, ComCtrls, StdCtrls, ExtCtrls, Menus, ToolWin, ExtDlgs;
type
TForm1 = class(TForm)
ImageList1: TImageList;
StatusBar1: TStatusBar;
ToolBar1: TToolBar;
ToolButton1: TToolButton;
ToolButton2: TToolButton;
Panel1: TPanel;
TreeView1: TTreeView;
Splitter1: TSplitter;
FileList: TListBox;
ToolButton3: TToolButton;
ImageList2: TImageList;
Panel2: TPanel;
Splitter2: TSplitter;
OpenPicDlg: TOpenPictureDialog;
procedure FormCreate(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
private
{ Private declarations }
public
function TreeMake(T:TTreeNode; I:integer):integer;
{ Public declarations }
end;
var
Form1: TForm1;
implementation
function TForm1.TreeMake(T:TTreeNode; I:integer):integer;
var
a,b,c:integer;
searchRec:TsearchRec;
begin
findfirst('*.*',fadirectory,searchRec);
b:=0;
repeat
if((searchRec.Attr and fadirectory)>0)and (searchRec.Name[1]<>'.') then
begin
treeview1.Items.AddChild(T,searchRec.Name);
treeview1.Items[treeview1.Items.Count-1].selectedindex:=1;
chdir(searchRec.Name);
c:=treemake(treeview1.Items[treeview1.Items.Count-1],i+b+1);
b:=b+c;
chdir('..');
end;
a:=findnext(searchRec);
until(a<>0);
findclose(searchRec);
result:=b;
end;
{$R *.DFM}
procedure TForm1.FormCreate(Sender: TObject);
begin
chdir('c:');
treeview1.Items.clear;
treeview1.Items.Add(treeview1.Selected,'c:');
treemake(treeview1.Items[0],0);
end;
procedure TForm1.ToolButton1Click(Sender: TObject);
begin
if OpenPicDlg.Execute then
filelist.Items.Add(extractfilename(openpicdlg.FileName));
end;
end.