Munka könyvtárak Delphi

Munka könyvtár (mappa) Delphi

Ebben a cikkben azt fogom bemutatni, hogy néhány szabványos funkciók dolgozó könyvtárak. És itt van néhány felhasználó által definiált függvények és példák azok használatát. Is figyelembe hívja a könyvtár párbeszédablak.

Kezdeni, először egy egyszerű funkciót hozzon létre egy új mappát. Az általános formája az ilyen funkció:

funkció CreateDir (const Dir: string): Boole;

Azaz, ha a mappa sikeresen létrehozta a függvény visszatérési értéke true. Azonnal egy egyszerű példa a felhasználásra:

eljárás TForm1.Button1Click (Sender: TObject);
kezdődik
ha CreateDir (c: \ testdir ') = igaz, akkor
ShowMessage (A könyvtár létrehozása sikeres volt ")
más
ShowMessage ( „Hiba történt létrehozása közben könyvtárból”);
végén;

Ha rákattint egy program megpróbál létrehozni egy mappát nevű testdir a C: meghajtón, és ha a kísérlet sikeres volt, az üzenet jelenik meg. Meg kell jegyezni, hogy ha nem adja meg a meghajtó betűjele, amelyen szeretne létrehozni egy mappát, a függvény létrehoz egy mappát ugyanabban a könyvtárban, mint maga a program.

vezethet ugyanazt az eredményt.

funkció RemoveDir (const Dir: string): Boole;

Azonnal szeretném figyelmeztetni, hogy ez a funkció csak távolítsa el az üres mappák, és ha van valami, akkor van egy hiba! De van egy megoldás. Itt jön a támogatás a felhasználói függvény egy egyszerű név MyRemoveDir. Itt a leírás a funkció:

Funkció MyRemoveDir (SDIR. Karakterlánc). logikai;
var
iIndex. integer;
SearchRec. TSearchRec;
sFileName. string;
kezdődik
Eredmény: = false;
SDIR: = SDIR + '\ *. *';
iIndex: = FindFirst (SDIR, faAnyFile, SearchRec);

míg iIndex = 0 akkor kezdődik
sFileName: = ExtractFileDir (SDIR) + '\' + SearchRec.Name;
ha SearchRec.Attr = faDirectory ezután kezdődik
if (SearchRec.Name <> „”) És
(SearchRec.Name <> '') És
(SearchRec.Name <> '..'), majd
MyRemoveDir (sFileName);
véget mást kezdeni
ha SearchRec.Attr <> faArchive majd
FileSetAttr (sFileName, faArchive);
ha nem DeleteFile (sFileName), majd
ShowMessage ( 'Nem lehet törölni' + sFileName);
végén;
iIndex: = FindNext (SearchRec);
végén;

RemoveDir (ExtractFileDir (SDIR));
Eredmény: = True
végén;

Másolás az egészet be a programot, akkor ez a funkció is lehet nevezni, mint ez:

ha nem MyRemoveDir ( 'C: \ testdir'), majd
ShowMessage (nem tudom eltávolítani ezt a könyvtárat ');

Most egy kicsit hátrébb a közvetlen munka mappák és azt a kérdést, számos érdekes. Hogyan hívja a párbeszéd jelöljön ki egy mappát (például amikor telepíteni a szoftvert). JUST.

Csatlakozás használ Filectrl.pas modul (vagyis használ FileCtrl;). Most az űrlapon van egy gomb (nem tévesztendő :) és írd be az alábbi kódot:

eljárás TForm1.Button3Click (Sender: TObject);
const
SELDIRHELP = 1000;
var
Dir: string;
kezdődik
R: = 'C: \ windows';
ha SelectDirectory (Dir, [sdAllowCreate, sdPerformCreate, sdPrompt], SELDIRHELP), majd
Caption: = DIR;
végén;

Amikor kiválaszt egy könyvtárat formájában fejléc megjelenítéséhez a nevét!

eljárás ForceDirectories (Dir: string);

Egy példa a használatát (mint mindig tettem a forma az új gomb, majd írásbeli)

eljárás TForm1.Button4Click (Sender: TObject);
var
Dir: string;
kezdődik
R: = 'C: \ mydir \ Test \ dir1';
ForceDirectories (Dir);
végén;

És végül, hogy a funkció ellenőrzi, hogy a könyvtár létezik-e vagy sem. Az általános formája a következő:

függvény DirectoryExists (Név: string): Boolean;

Ha egy könyvtár van megadva a neve paraméter létezik -, akkor a függvény visszatérési értéke true.

Remélem, hogy segített egy leírást ezeket a funkciókat és eljárásokat. Csak azt, hogy adjon tanácsot gyakran megnézi HELP, van egy csomó érdekes és hasznos információt!

Sok szerencsét a programozás.

Kapcsolódó cikkek