salut tout le monde,
je voudrais savoir comment je pourrais faire pourque mon savedilog s'execute sur un panel et non sur une fenetre flottante.
Merdi d'avance
salut tout le monde,
je voudrais savoir comment je pourrais faire pourque mon savedilog s'execute sur un panel et non sur une fenetre flottante.
Merdi d'avance
Mouhais .... je pense qu il doit y avoir une autre solution
Ce n'est qu'une idée.
Il faudrait pouvoir déclarer le panel comme étant le parent du SaveDialog et de positionner la fenêtre du SaveDialog par-dessus le panel, puis de trouver une combine pour réajuster ce positionnement à chaque tentative de déplacement de l'un par rapport à l'autre ... c'est à dire une usine à gaz.
Comme disait Philnext : "Le plus simple c'est de le réécrire". Sauf que je dirais qu'il n'y a pas grand-chose à réécrire en posant sur ton panel :
- un FileListBox,
- un DriveComboBox1 où l'on place dans sa propriété DirList (dans l'Inspecteur d'objets) la valeur DirectoryListBox1 ,
- un DirectoryListBox1 où l'on place dans sa propriéré FileList la valeur de FileListBox1
- et un FilterComboBox1 où l'on place idem dans sa propriéré FileList la valeur de FileListBox1
Pour compléter la syncgronisation des affichages y'a plus qu'à taper quelques lignes de code pour les procedures réagissant au onChange :
Ce qui précède est utilisable pour se faire un SaveDialog ou un OpenDialog personnalisés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 procedure TForm1.DriveComboBox1Change() begin DirectoryListBox1.Drive:=DriveCombBox1.Drive; end; procedure TForm1.DirectoryListBox1Change() begin FileListBox1.Directory:=DirectoryListBox1.Directory; end; procedure TForm1.FilterComboBox1Change() begin FileListBox1.Mask:=FilterComboBox1.Mask; end;
Reste lus qu'à ajouter un Bouton "Sauver" ou un Bouton "Ouvrir" et un Bouton "Echapper-Fermer-Annuler" et ajouter qq lignes de code pour gérer les click-Boutons.
... mais si tu trouves encore plus simple je suis également intéressé.
A+
Beh le truc c'est que je pense que l'interface des "dialogs" n'est pas codé ça doit etre un appel a une API de windows ou un truc dans le genre. donc il doit y avoir un moyen de faire ce que je voudrais ça avoi a tout recodé je pense
Partager