[Delphi 2005 personnal edition] [Windows Form Application] showModal? [Résolu]

Signaler
Messages postés
57
Date d'inscription
vendredi 24 mars 2006
Statut
Membre
Dernière intervention
2 août 2007
-
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
-
Je suis en train de réaliser une application windows form.





Je voudrais afficher une form à partir d'un autre form
et que celle-ci reste valide tant qu'une réponse n'a pas
été mentionnée.





Comment dois-je faire ?
la méthode ShowModal ne semble pas existé pour ce type de projet ?




Merci de me proposer une solution si quelqu'un en a une.

Je vous remercie pour votre aide.

15 réponses

Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
si la réponse te convient n'oublie pas d'appuyer sur réponse acceptée



@+

jlen
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
salut ,

le showmodal existe en D2005 perso.

--->form2.showmodal;



@+

jlen
Messages postés
57
Date d'inscription
vendredi 24 mars 2006
Statut
Membre
Dernière intervention
2 août 2007

Je suis d'accord avec toi. Mais j'ai créé un projet Windows Form Application.
Les forms sont déclaré de cette façon :

Form2= class(System.Windows.Forms.Form)

La méthode show est accessible, mais pas la méthode showmodal. Est-ce que mon projet a été mal créé ?
Ou bien sur les windows form application, on ne peut pas gérer les fenêtres modal.

Merci pour vos réponses
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
comment as tu créé ton projet

il fuat faire fichier--->nouveau--->Application fiches VCL Delphi pour Win32

FORM=class(Tform);



@+

jlen
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
apparament tu l'aurais créee en C#



@+

jlen
Messages postés
57
Date d'inscription
vendredi 24 mars 2006
Statut
Membre
Dernière intervention
2 août 2007

Non j'ai bien créer un projet delphi.

J'ai fait nouveau --> Application Windows Form - Delphi pour .Net
J'ai préféré utilisé les windows Form plutôt que la VCL pour des raisons
de commodité.
Et donc show modal n'est pas accessible.
Messages postés
3825
Date d'inscription
vendredi 23 juillet 2004
Statut
Modérateur
Dernière intervention
1 février 2021
42
Salut,
tu es en .Net c'est pas la même chose
il faut prendre Nouveau... Application Windows 32 bits

@+
Cirec
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
pour .Net je ne connais pas ,d'autan que je ne suis pas très attiré par
une platteforme interprétéela compilation just -in-time est souvent
pire qu'un interpréteur) et où on ne peut plus ou presque
utiliser le pointeurs) ce n'est qu'un VB nouvelle mouture beurkk..



@+

jlen
Messages postés
57
Date d'inscription
vendredi 24 mars 2006
Statut
Membre
Dernière intervention
2 août 2007

Cirec,

quand je fais nouveau, je n'ai pas la possibilité de créer une Application Windows 32 bits. Je peux juste créer des fiches Windows 32 bits. Comment dois je procéder si je veux créer une application ?

Je te remercie d'avance.
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
si tu fais coome je te l'ai dit dans un précédent tu crée un projet delphi pour Win32;



il faut faire fichier--->nouveau--->Application fiches VCL Delphi pour Win32

la il t'ouvre une fiche ensuite tu n'as plus qu'à faire enregistrer sous et suivre ce qu'il te demande



@+

jlen
Messages postés
57
Date d'inscription
vendredi 24 mars 2006
Statut
Membre
Dernière intervention
2 août 2007

Je suis d'accord avec toi. Mais l'application que je veux créer est multi form.
C'est plus galère pour gérer cela avec les VCL.
En effet, il y a d'abord un écran de chargement, ensuite un écran de connexion, pour arriver ensuite à l'écran principal.
Au début j'étais parti sur ce type de projet mais c'est difficile à gérer.
As-tu déjà gérer ceci avec les VCL?
Si oui, comment dois-je procéder ?
Je te remercie en tout cas de l'attention que tu portes à mon problème
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
Si j'ai bien compris tu veux un splash screen puis passer au programme principal?

pour le splash screen vas voir:

FENÊTRE D'ACCUEIL AU LANCEMENT D'UN PROGRAMME

par contre qu'appelles tu un écran de connexion?

Hormis le splash screen pour du multi fenêtrage la VCL ne pose pas de problème pour l'appel et la fermeture des fenêtres



@+

jlen
Messages postés
57
Date d'inscription
vendredi 24 mars 2006
Statut
Membre
Dernière intervention
2 août 2007

Je suis d'accord avec toi. Sauf que pour le splash je voudrais avoir une progress bar et ce qui est fait dans FENETRE D'ACCUEUIL AU LANCEMENT D'UN PROGRAMME ne le gère pas. Ensuite, le premier create form qui est appelé constitue ta fenêtre principal et je n'est pas trouver le moyen de masquer cette fenètre (ni visible ni l'autre méthode dont je ne me rappelle plus le nom ne fonctionne). Ensuite tu peux dire que ta fenêtre principal pour pouvoir tout gérer est ton écran de connexion mais lorsque l'utilisateur est connecté si je ferme cette feuille, la totalité du programme est fermé.

C'est pour cela que l'utilisation des windows form me paraissaient la plus appropriée car je peux fermer des fenêtres en ouvrir une autre par la suite car ce qui est appelé dans l'exécutable de ton projet c'est :

Application.Run(FLancement.Create);
Application.Run(Connexion.FConnexion.Create);

Alors que dans les VCL le premier Create Form indique que c'est à fenêtre principal et c'est celle-ci qui est créée en premier et la gestion me parait beaucoup plus difficile. Si tu as des exemples concrêts d'appli avec d'abord un splash screen puis un écran de connexion puis la fenêtre principale, je suis preneur.

Je te remercie. A +
Messages postés
1606
Date d'inscription
samedi 10 juillet 2004
Statut
Membre
Dernière intervention
25 juillet 2014
11
voici comment je fais

la premiere form me sert de splash screen:

je mets le borderstyle à bsnone et tous les borderIcon à false

je mets un timer sur la form dans le timer:

procedure TForm1.Timer1Timer(Sender: TObject);

begin

timer1.Enabled:=false;

form2.show;

form1.Hide;

end;

si tu as besoin d'un écran suivant qui ne sera affichee qu'une fois tu
mets le borderstyle à bsnone et tous les borderIcon à false et dans le
bouton (par exemple de fermeture de l'écran:

procedure TForm2.Button1Click(Sender: TObject);

begin

form3.show;

form2.Hide;

end;

les fenetres hide ne sont accessibles que si tu fais show.



@+

jlen





seul la /les fenêtres sivant sont accessibles et la 1ere ne sert plus

pour fermer l'application je mets Application.Terminate dans la / les fenetres permettant de fermer l'application



@
Messages postés
57
Date d'inscription
vendredi 24 mars 2006
Statut
Membre
Dernière intervention
2 août 2007

Je te remercie pour l'aide que tu m'a apporté ainsi que le temps que tu m'as consacré pour me répondre.
J'ai enfin réussi à faire ce que je voulais et ca tourn nickel.

Encore Merci.

Pitch