2009-08-17 12 views

risposta

16

Ci sono due routine sovraccarico in FileCtrl.pas chiamati SelectDirectory

Per un look moderno, utilizzare la seconda forma, con sdNewUI

var 
    dir : string; 
begin 
    dir := 'C:\temp'; 
    FileCtrl.SelectDirectory('Select', 'C:\', dir, [sdNewFolder, sdNewUI], Self); 
end; 

NOTA: sdNewFolder, sdNewUI ecc sono disponibili solo dal D2006 +

+0

Grazie per quello. Ho dato un'occhiata a SelectDirectory in precedenza ma non ho visto l'opzione per l'interfaccia utente moderna. – Rowan

+0

Un elenco delle opzioni disponibili nel parametro Options per SelectDirectory può essere trovato qui: http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/FileCtrl_TSelectDirExtOpt.html – Rowan

+0

Utilizzo di FileCtrl.pas mi dà un avvertimento: l'unità "FileCtrl" è specifica per una piattaforma. C'è una soluzione senza questa unità? – TomCat500

2

è possibile utilizzare SelectDirectory dall'unità FileCtrl

using FileCtrl; 
var 
    St: string; 
begin 
    St:='c:\'; 
    if SelectDirectory(St,[],0) then 
    begin 
    end; 

end; 
1

È possibile scaricare un componente PBFolderDialog da "http://bak-o-soft.dk/Delphi/PBFolderDialog.aspx" che è abbastanza facile da usare e offre un accesso a tutte le opzioni della finestra di dialogo "SHBrowseForFolder" di Windows; qualcosa che i built-in non fanno.

È freeware con sorgente e non troppo difficile da portare a Delphi 2009.

Problemi correlati