Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1399 connectés 

  FORUM HardWare.fr
  Programmation

  DELPHI showModal etc...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

DELPHI showModal etc...

n°67675
AGA
La boîte à Bokeh!
Posté le 26-10-2001 à 08:51:45  profilanswer
 

J'ai un Menu qui appelle des fenetres (1, 2, 3) via un showmodal
Mais j'ai aussi une des fenetre(1) qui appele la fenêtre (2) via egalement un chaud modal, comment savoir d'où on vient? (si c depuis le menu ou depuis la fenêtre 1)


---------------
ma vie, ma carrière! - Un trait d’union entre des photos et des mots.
mood
Publicité
Posté le 26-10-2001 à 08:51:45  profilanswer
 

n°67676
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-10-2001 à 09:09:58  profilanswer
 

dans on OnShow:

Code :
  1. if Sender is TNomDeTaForm1 then
  2. begin
  3.   ...
  4. end
  5. else if Sender is TNomDeTaForm2 then
  6. begin
  7.   ...
  8. end;


je pense que ça doit marcher (à vérifier)
quand tu l'appelles soit depuis le menu soit depuis la fenêtres, c'est dans les deux cas à partir d'une form ?
si c'est deux forms différentes, suffit de faire un if Sender is NomDeLaForm. Si c'est soit un menu, soit un bouton, mais tous deux sur une même form, je suis pas sûr que ça marche.
Autre possibilité: faire une méthode Execute, qui selon un paramètre fait deux trucs différents et fini par un result:=showmodal;

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°67684
AGA
La boîte à Bokeh!
Posté le 26-10-2001 à 09:55:26  profilanswer
 

antp a écrit a écrit :

dans on OnShow:

Code :
  1. if Sender is TNomDeTaForm1 then
  2. begin
  3.   ...
  4. end
  5. else if Sender is TNomDeTaForm2 then
  6. begin
  7.   ...
  8. end;


je pense que ça doit marcher (à vérifier)
quand tu l'appelles soit depuis le menu soit depuis la fenêtres, c'est dans les deux cas à partir d'une form ?
si c'est deux forms différentes, suffit de faire un if Sender is NomDeLaForm. Si c'est soit un menu, soit un bouton, mais tous deux sur une même form, je suis pas sûr que ça marche.
Autre possibilité: faire une méthode Execute, qui selon un paramètre fait deux trucs différents et fini par un result:=showmodal;  
 
 




oui c a partir de deux formes, il semble pas reconnaitre le sender :(


---------------
ma vie, ma carrière! - Un trait d’union entre des photos et des mots.
n°67688
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-10-2001 à 10:08:39  profilanswer
 

comment ça "pas reconnaître" ?
Sender c'est le paramètre que tu as dans la plupart des events (onShow par ex)


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°67692
AGA
La boîte à Bokeh!
Posté le 26-10-2001 à 10:17:18  profilanswer
 

IF sender is  TfrmMenuBar   THEN
begin
  depuisMenu:= TRUE; //On vient du Menu
  showMessage('depuis Meni';);
end
ELSE showMessage('SNK';);
end;
ba même si c TfrmMenubar qui apelle la fenetre ça marche pas, il fait tjs le ELSE, donc il evalue le test à FALSE tout le temps  :sweat:


---------------
ma vie, ma carrière! - Un trait d’union entre des photos et des mots.
n°67695
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-10-2001 à 10:45:41  profilanswer
 

essaie de faire juste un showmessage(sender.classname) pour voir justement le nom qu'il recoit dans les deux cas.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°67702
AGA
La boîte à Bokeh!
Posté le 26-10-2001 à 10:57:26  profilanswer
 

ds les deux cas le nom de la fiche qui est appelé :(
Sinon comment peut on appele une fiche avec un param, (surtout comment declaré la fiche :??: )


---------------
ma vie, ma carrière! - Un trait d’union entre des photos et des mots.
n°67708
antp
Super Administrateur
Champion des excuses bidons
Posté le 26-10-2001 à 12:57:12  profilanswer
 

si sender.classname contient le nom de la fiche et que tu veux savoir quelle fiche a appelé, c'est bon non ?
 
pour mettre des params, dans la déclaration de la form:

Code :
  1. public
  2.   function execute(...params...): TModalResult;


et dans l'implémentation:

Code :
  1. function nomdelaform.execute(...params...): TModalResult;
  2. begin
  3.   { ici tu fais ce que tu veux avec tes params }
  4.   result := self.ShowModal; // on affiche la form
  5. end;


donc pour appeler la form au lieu de faire

Code :
  1. nomdelaform.showmodal;


tu fais

Code :
  1. nomdelaform.execute(params);

 

[edtdd]--Message édité par antp--[/edtdd]


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°67709
AGA
La boîte à Bokeh!
Posté le 26-10-2001 à 13:02:35  profilanswer
 

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  DELPHI showModal etc...

 

Sujets relatifs
DELPHI arrondiDELPHI
[Delphi 4] Ecrire du texte sur un bouton sur 2 ligneDELPHI Fonction
[Delphi 4] Ajouter une information sur un bitbtn[Delphi ou n'importe quel autre language] Importation d'infos d'IMDB
[Delphi 4] Ouvrir une autre instance de l'executableDELPHI ALigner un edit
Delphi 4 : comprend pas !Delphi 4 : création et installation de nouveaux composants graphiques
Plus de sujets relatifs à : DELPHI showModal etc...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR