Lumea Delphi - un ghid pentru computere, directoare, fișiere și imprimante

Calculatorul permite rezolvarea tuturor problemelor pe care înainte ca invenția calculatorului să nu existe.

Toate informațiile pentru inițializarea și configurarea casetei de dialog Răsfoire pentru dosar sunt transmise printr-o variabilă de tip BrowseInfo. Funcția în sine ne va întoarce lista elementelor ID (de exemplu: locația folderului selectat).







Acum, să vedem cum să umplem structura de înregistrare cu informațiile necesare pentru a inițializa caseta de dialog Răsfoire pentru dosar și apoi apelați SHBrowseForFolder pentru a afișa caseta de dialog.

Elementele principale ale structurii sunt câmpurile lpszTitle și ulFlags. Câmpul lpszTitle este text, sub forma unui control al textului static asupra arborelui. Elementul ulFlags specifică steaguri care specifică modul de afișare al dialogului.







Steagurile vă permit să faceți dialogul mai util decât afișarea directoarelor. În tabel sunt afișate unele steaguri care vă permit să extindeți opțiunile dialogului Răsfoiți pentru fișiere:

Când vom pune toate cele de mai sus în funcția Delphi care va crea structura, inițializați-o și sunați SHBrowseForFolder () pentru a afișa caseta de dialog, aceasta va arăta astfel:

Funcția BrowseDialog are doi parametri la intrare: Titlu și Flag. Titlul este textul deasupra arborelui (câmpul lpszTitle din intrarea BrowseInfo). Parametrul Flag este folosit pentru a popula câmpul ulFlags.

Acum puteți apela această funcție (pentru a afișa directorul selectat de utilizator) după cum urmează:

Notă: În forma (numită: frMain) component prezent RadioGroup (grup de butoane radio (denumit: rgBrowseFor)), care are patru eleementa, fiecare dintre acestea reprezentând o valoare Steagului variabilă. Funcția extrage calea lpItemID în dosarul selectat, și o returnează (completarea unei componente de câmp de text edSelected). Dacă funcția returnează o eroare (sau utilizator a făcut clic pe butonul Revocare), apoi șirul returnat este gol.







Trimiteți-le prietenilor: