2009-08-17 14 views

Respuesta

16

Hay dos rutinas sobrecargadas en FileCtrl.pas llamados SelectDirectory

Para un look moderno, utilizar la segunda forma, con sdNewUI

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

NOTA: sdNewFolder, etc sdNewUI sólo están disponibles a partir D2006 +

+0

Gracias por eso. Miré a SelectDirectory anteriormente, pero no vi la opción para la interfaz de usuario moderna. – Rowan

+0

Puede encontrar una lista de las opciones disponibles en el parámetro Opciones para SelectDirectory aquí: http://docs.embarcadero.com/products/rad_studio/delphiAndcpp2009/HelpUpdate2/EN/html/delphivclwin32/FileCtrl_TSelectDirExtOpt.html – Rowan

+0

Usando FileCtrl.pas me da una advertencia: la unidad "FileCtrl" es específica de una plataforma. ¿Hay una solución sin esta unidad? – TomCat500

2

puede utilizar SelectDirectory de la unidad FileCtrl

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

end; 
1

Puede descargar un componente PBFolderDialog de "http://bak-o-soft.dk/Delphi/PBFolderDialog.aspx" que es bastante fácil de usar y ofrece acceso a todas las opciones del cuadro de diálogo "SHBrowseForFolder" de Windows; algo que los incorporados no hacen.

Es freeware con fuente y no es demasiado difícil de portar a Delphi 2009.

Cuestiones relacionadas