Newsgroup: it.comp.lang.delphi
Titolo: Memorizzare percorso directory

Sto usando questa funzione per trovare un file e spedirlo in seguito via 
mail:
FindFirst('nomefile', faAnyFile, searchResult)
Ogni volta che eseguo questo programma il file è in una cartella diversa, 
dovrei poter scegliere la cartella tramite una finestra di dialogo ma non 
ho mai usato i dialog e mi servirebbe qualche suggerimento...
Grazie
--- posted by geoForum on 
http://www.delphiedintorni.it

 ho mai usato i dialog e mi servirebbe qualche suggerimento...
L'uso delle /Dialogs/ è molto semplice: dalla pagina "Dialogs" della 
Palette, prelevi ad esempio il componente *OpenDialog* che ti consente 
l'accesso alle funzionalità della finestra di dialogo comune per la 
selezione di uno o più file.
Consultando la Guida in linea, puoi informarti sul significato delle 
varie opzioni che il componente ti mette a disposizione, modificandone i 
valori attraverso l'Object Inspector.
Richiamando il metodo /Execute/, la finestra di dialogo viene 
visualizzata riflettendo le opzioni definite; il valore restituito dal 
metodo è di tipo Booleano e vale True se l'utente ha confermato la 
propria scelta, oppure False in caso contrario (ha premuto "Annulla").
Se il valore di ritorno è True, puoi ispezionare la proprietà /FileName/ 
per determinare il percorso completo del file selezionato attraverso la 
finestra di dialogo; ovviamente, del percorso che ottieni ne farai ciò 
che vorrai...la finestra di dialogo si limita alla selezione, ma sei tu 
che dovrai scrivere il codice corrispondente per trattare tale selezione 
come meglio credi, ad esempio leggendo il file selezionato, 
memorizzandone il percorso (come nel tuo caso) e così via.
La memorizzazione del percorso del file puoi effettuarla nel Registro di 
Configurazione oppure all'interno di un file INI.
Ciao! :-)
-- 
Marco «Alka» Breveglieri
  (marco [@] abls [.] it)
  ABLS Team S.n.c. - Software & Web
  42019 Scandiano (Reggio Emilia)
 
http://www.abls.it

Sei stato molto chiaro, ma c'è un particolare: io non devo aprire un file 
ma memorizzare il percorso di una directory per poi lavorare su alcuni 
file all'interno. Ho provato ad usare l'oggetto TOpenDialog ma non 
accetta il percorso di una cartella ma solo di un file...
Ciao e grazie


 non accetta il percorso di una cartella ma solo di un file...
Puoi ricorrere all'uso della shell:
http://delphi.about.com/od/windowsshellapi/l/aa122803a.htm
Ciao
guastatore

 accetta il percorso di una cartella ma solo di un file...
Se non ho compreso male, ti serve quindi un modo per selezionare una 
*cartella* e non un singolo file.
In tal caso, prendi in considerazione l'uso della funzione 
/SelectDirectory/.
Trovi maggiori informazioni qui:
http://www.delphibasics.co.uk/RTL.asp?Name=SelectDirectory


Ho trovato una possibile soluzione:
Nella Plette "Samples" ci sono dei componenti che fanno al caso mio:
ShellComboBox e ShellListView.
Com questi riesco a riprodurre la classica finestra di dialogo, mi 
servirebbe solo capire se c'č una proprietą in uno di questi oggetti che 
mi restituisce il percorso selezionato (root mi mostra il percorso 
iniziale).
E gią che sono qua... un pulsante che risalga alla cartella precente...
Ciao a tutti!


 iniziale).
La proprietà /SelectedFolder/ del controllo *ShellTreeView*, ad esempio, 
restituisce informazioni sull'elemento selezionato; attraverso la 
proprietà /ObjectTypes/, puoi configurare gli elementi che devono 
apparire all'interno del controllo, eventualmente includendo i file.
Comunque, mi sembra uno spreco utilizzare tali controlli per la banale 
selezione di una cartella "una tantum" da memorizzare in modo permanente.


 selezione di una cartella "una tantum" da memorizzare in modo permanente.
Concordo :-)
Ciao
guastatore

Ho provato con SelectDirectory ed effettivamente funziona, perň 
graficamente non č il massimo... Ora proverň con ShellTreeView e vedrň 
quale mi piace di piů (o quale funziona meglio...).
Ciao a tutti


 quale mi piace di più (o quale funziona meglio...).
Attenzione che, se non ricordo male, la funzione *SelectDirectory* 
presenta la finestra di dialogo in due modi completamente differenti tra 
loro, a seconda dei parametri passati.
Controlla nuovamente l'indirizzo che ti ho indicato nel messaggio 
precedente per saperne di più.


Tutto risolto!
Grazie mille
