je voudrai créer un form a partir dun unit sans utiliser showmodal ou show est-ce possible?
je voudrai créer un form a partir dun unit sans utiliser showmodal ou show est-ce possible?
Tu veux la créer sans l'afficher, dans quel but ?
///\\3rl1n_ (O.dahan)
Formation, Développement, Audit, C#, XAML, WPF, UWP, Xamarin
Dot.Blog restez au courant...
Microsoft MVP 2009-2019
EN fait, dans le cadre de mon stage, g aps les accès pour showmodal et show et je crois ke mon maitre de stage mavasi montré un truc avec create(self) mais je retrouve aps le truc. je veux lafficher mais pas avec show ou showmodal ke je ne peu x pas utiliser.
Je ne vois pas trop.. Il n'y a pas d'autres méthodes que show ou showmodal pour afficher une fenêtre.Envoyé par benta
"create(self)" concerne la création d'un objet (éventuellement une fenêtre TForm comme tout objet) et n'a pas de rapport direct avec son affichage (en dehors du fait qu'une tform doit être créée avant d'être affichée).
A mon avis tu as un peu "mangé" les recommandations qui t'ont été faites, essaye d'être plus précis :-)
///\\3rl1n_ (O.dahan)
Formation, Développement, Audit, C#, XAML, WPF, UWP, Xamarin
Dot.Blog restez au courant...
Microsoft MVP 2009-2019
Salut BENTA, enfait je crois avoir une astuce que tu pourais utilisais pour afficher un FORM, d'abord tu initialise son VISIBLE a FALSE et quand tu veux l'afficher, tu retourne le jeton en TRUE et tu joue avec le jeton pour afficher ou cacher [/b]
Plusieurs processeurs pour une machine;
Plusieurs Machines pour un calcul;
Plusieurs calculs pour un résultat;
Plusieurs Résultats pour un diagnostique;
Plusieurs Diagnostiques pour une décision.
...........................................................
la Décision est un acte de Management,
le Management est un Acte d'informatique
Bonjour.
Je ne vois pas l'interet d'utiliser la propriété "visible" de la fiche.
Autant utiliser la méthode "Show" qui fait un UpDate de la fiche au
moment de la rendre visible, et la méthode close qui la cache sans la
détruire.
Apparemment le maître de stage a demandé d'utiliser la methode Create.
J'en conclus qu'il veut que la fiche soit créée, utilisée pour une action
précise, puis détruite (methode Release). Merci benta de préciser si c'est
bien ça. Si oui, j'utilise un truc simple et facile à faire.
A+
Rien n'est moins sur que l'incertain : Pierre DAC
ce genre la?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 procedure TForm1.Apropos1Click(Sender: TObject); var my_picture : TImage; photo : string; begin my_form := TForm.Create(self); my_picture := TImage.Create(my_form); with my_picture do begin photo := Application.GetNamePath + 'vnp1.jpg'; if FileExists(photo) then begin Visible := true; my_picture.Picture.LoadFromFile(photo); Align := alclient; my_form.height := my_picture.picture.height; my_form.width := my_picture.picture.width; parent := My_form; OnClick := MyOnClick; end else ShowMessage('La photo est introuvable'); end; with my_form do begin BorderStyle := bsNone; Position := poScreenCenter; Visible := true; end; end;
=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=
(\_/)
(O.o)
(> <)
This is Bunny. Copy Bunny into your signature to help him on his way to world domination!!
=-=-=-=-=-=-=-=-=-=--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-==-=-=-=-=-=-=-=-=-=-=
-1- Créer la fiche en mode conception comme n'importe quelle autre Fiche.
-2- Ouvrir le projet avec dans le menu Projej->Voir le source.
Exemple :
Supposons que ce soit la fiche "FicheSaisie" qu'il faut créer de façon
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 program Project1; uses Forms, Unit1 in 'Unit1.pas' {Form1}, Fiche2 in 'Fiche2.pas' {FicheSaisies}; {$R *.RES} begin Application.Initialize; Application.CreateForm(TForm1, Form1); Application.CreateForm(TFicheSaisies, FicheSaisies); Application.Run; end.
temporaire.
-1- Retirer la création de la fiche au démarrage du programme.
Copier la ligne de code de création de la fiche.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 program Project1; uses Forms, Unit1 in 'Unit1.pas' {Form1}, Fiche2 in 'Fiche2.pas' {FicheSaisies}; {$R *.RES} begin Application.Initialize; Application.CreateForm(TForm1, Form1); //Application.CreateForm(TFicheSaisies, FicheSaisies); Application.Run; end.
Supposons que nous voulons créer la fiche en cliquant sur un bouton dans
Form1.
Dans l'événement OnClose de la fiche FicheSaisie, écrire le code de sa
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Procedure TForm1.Button1Click(Sender : TObject); begin // Placer ici le code de création de la fiche. Application.CreateForm(TFicheSaisies, FicheSaisies); end;
destruction.
Pourquoi utiliser cette technique ? C'est une méthode que j'utilise pour de
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 procedure TFicheSaisie.FormClose(Sender: TObject; var Action: TCloseAction); begin // Destruction de la fiche et de tout ce qu'elle contient et libération de la mémoire Release end;
très grosses fiches
gourmandes en mémoire, ou bien pour utiliser des boites de dialogues
personnalisées.
Un des gros interet de cette méthode, est de pouvoir déveloper la fiche au
moment de la conception (particulièrement interressant pour des fiche devant
contenir de nombreux composants et événement). De plus, étant créée avec dans
Application qui devient le parent directe, le fonctionnement de la fiche avec
les messages WINDOWS est uptimum.
Si cela répond à ta demande...
Rien n'est moins sur que l'incertain : Pierre DAC
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager