unit SelectTreeView; {Sélectionner un répertoire dans l'arborescence } interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons, ComCtrls, ShellCtrls; type TFrmV = class(TForm) bConfirmer: TBitBtn; bAnnuler: TButton; procedure FormActivate(Sender: TObject); procedure bConfirmerClick(Sender: TObject); procedure bAnnulerClick(Sender: TObject); private { Déclarations privées } public { Déclarations publiques } end; Function DefinTreeView:string; var FrmV: TFrmV; chemin:string; Shell:TshellTreeView; implementation {$R *.dfm} Procedure TFrmV.bAnnulerClick(Sender: TObject); {Bouton bAnnuler} begin Chemin:=''; Close; end; procedure TFrmV.bConfirmerClick(Sender: TObject); {Bouton BConfirmer} begin Chemin:=(Shell.Path); close; end; procedure TFrmV.FormActivate(Sender: TObject); begin Shell:=TshellTreeView.Create(self); With Shell do begin Parent:=Self; Height:=193; Width:=340; Top:=15; Left:=15; end; Chemin:=''; end; Function DefinTreeView:string; begin FrmV:=TFrmV.Create(Application); try FrmV.ShowModal; finally Shell.Free; FrmV.release; end;{try finally} Result:=chemin; end; end. {----------} (* procedure Exemple; var S:string; begin S:=DefinTreeView; showmessage(S); end; *) (*********************)