12. lecke - hozzon létre egy listát a fájlok - Delphi forrásból gyik
Nem túl gyakran, de néha szükség van egy alkalmazás számára, hogy a lista fájlok és alkönyvtárak a könyvtárban. Azok számára, akik a KOL és MCK már megnyitott 3 módon lehet megoldani ezt a problémát. Az igazság az normális, véleményem szerint még mindig az egyetlen :) Tekintsük.
1. utat. „Hagyományos”.
Hagyományosan használt API 3 funkció: FindFirstFile (úgy néz ki, az első fájlt a listában), FindNextFile (keresi a következő fájl). FindClose (keresés felmondás). Általában az első 2. funkció zamenyutsya a VCL-pénzhelyettesítő FindFirst, FindNext. Számunkra ezek nem egészen elfogadható, mert ahhoz, hogy kihasználják ezeket a funkciókat, meg kell csatlakoztatni SysUtils könyvtárban. És köztudott, hogy extra zsír a sportos programot :-). A példa keverve tiszta API KOL.
Magyarázat a számla attribútumait a kívánt fájlt:
- FILE_ATTRIBUTE_ARCHIVE - archív fájlt.
- FILE_ATTRIBUTE_COMPRESSED - egy tömörített fájlt vagy mappát.
- FILE_ATTRIBUTE_HIDDEN - egy rejtett fájl.
- FILE_ATTRIBUTE_NORMAL - szabályos fájl.
- FILE_ATTRIBUTE_OFFLINE - file adat nem áll rendelkezésre. Ez azt jelzi, hogy az adatállományok már fizikai mozgatását.
- FILE_ATTRIBUTE_READONLY - csak olvasható fájl.
- FILE_ATTRIBUTE_SYSTEM - rendszer fájl.
- FILE_ATTRIBUTE_TEMPORARY - ideiglenes fájl.
- FILE_ATTRIBUTE_DIRECTORY - directory
2. utat. „A homlokán.”
Annak ellenére, hogy az egyszerűség e művelet képviseli a kód még könnyebb, mert ListBox maga tudja mutatni a fájlokat egy külön könyvtárba. Ehhez tudnunk kell fordulni AddDirList tulajdon. Példa még kevésbé.
Ez minden bizonnyal egy érdekes módja annak, hogy egy listát a fájlokat, de nem működik :) Ne hozzon létre, mert az ablak minden alkalommal egy ListBox vagy SomboBox (ő is ugyanazt az ingatlant), hogy a fájlok listáját. És valamilyen okból kimeneti fájlok listája a „rövid név” (azaz, mint a DOS). A legvalószínűbb, Vladimir Treasure hozzáadott ezt a funkciót, mint egy érdekes funkció, és semmi több.
A harmadik módszer. „Ahogy annak lennie kell”
Nos, a legérdekesebb :) A KOL egy objektum létrehozásához használt fájlokat a lista. Ez PDirList. Itt a kivitelező:
DirPath - beolvasott könyvtár
Filter - egy szűrőt a fájlok vagy könyvtárak
Attr - az attribútumok
A listát a módszerek és tulajdonságok a dolgozó tárgya: