Quelqu'un pour aider une pauvre newbie ?

delegouine Messages postés 24 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 19 mai 2004 - 28 avril 2004 à 14:54
delegouine Messages postés 24 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 19 mai 2004 - 30 avril 2004 à 09:17
bon voilà, mon problème, c'est que je cherche à initialiser une variable de formulaire (nommé f1) à partir d'une donnée contenue dans un autre formulaire f2.
Sur ce forum, j'ai lu qu'il fallait gérer ça dans les constructeurs avec le mot magique ref pour éviter les exceptions. Mais ce que je ne sais pas faire c'est l'appel à ce constructeur, bicoze il faut une référence vers ce que je passe en paramètre, et là, je sais pas faire.
Si vous avez compris mon baragouinage et que vous pouvez m'aider, n'hésitez pas, cela m'évitera peut-être quelques heures de veille ! Merci!!!

des frites !

7 réponses

delegouine Messages postés 24 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 19 mai 2004
28 avril 2004 à 15:22
pendant que j'y pense, j'ai une autre petite question : à quel évènement correspond le fait de cliquer sur la croix en haut à droite d'un form ? J'ai essayé close, closing et deactivate et apparemment ce n'est pas ça....

des frites
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
28 avril 2004 à 19:12
1) si j'ai bien compris la question
Constructeur :
Cool(ref string dingue)
{
...
}


Appel :
Cool monCool = new Cool(ref maChaine);


2) la croix "déclenche" 2 évènements : Close et Closing
Close : déclenché apres la fermeture
Closing : déclenché avant la fermeture

Cocoricoooooooo !!!!
0
delegouine Messages postés 24 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 19 mai 2004
29 avril 2004 à 08:01
Ah ben oui, une fois que c'est écrit ça paraît tellement simple... Merci beaucoup !!!

des frites !
0
delegouine Messages postés 24 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 19 mai 2004
29 avril 2004 à 16:16
Par contre, ça marche pas cette histoire de close et closing... j'ai jeté un petit coup d'oeil sur l'aide et ils disent que closing se fait après la fermeture... comme close d'ailleurs. donc je peux pas faire mes traitements avant fermeture... Ou alors il faudrait que je puisse désactiver la fermeture de formulaire via la croix, mais ça me paraît un peu impossible quand même...
Ca inspire quelqu'un ?

des frites !
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
delegouine Messages postés 24 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 19 mai 2004
29 avril 2004 à 16:35
bon, rectification again.

j'ai vu qu'il fallait utiliser un cancel=true ou qqch comme ça, mais ça marche toujours pas. Mon code donne à peu près :

private void form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
{
e.Cancel = true;

MessageBox.Show("On ferme");
this.Close();
}

En fait il ne m'affiche pas le messagebox alors chui bien embêtée...
ou au lieu du this.close() je dois mettre e.cancel =true ???

des frites !
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
29 avril 2004 à 17:39
bon deja je ne vois pas pkoi il n'affiche pas le messagebox

ensuite Closing se fait vraiment avant la fermeture du Form.

ensuite je capte pas l'interet du e.Cancel=true (annulation de la demande de fermeture) puis du Close : tu veux empecher la fermeture et derriere tu la demande...

sans compter que Close() va entrainer un evenement Closing, qui va executer Close(), qui va entrainer un evenement Closing, qui va executer Close(), qui...
enfin bref une bonne grosse boucle infinie ^^

ici si tu veux juste dire que l'appli va se fermer ben t'as juste la ligne MessageBox à mettre, pas le reste.

Cocoricoooooooo !!!!
0
delegouine Messages postés 24 Date d'inscription mardi 27 avril 2004 Statut Membre Dernière intervention 19 mai 2004
30 avril 2004 à 09:17
ok ok j'ai vu ce qui n'allait pas, en fait tu avais raison sur le closing (leur aide c'est vraiment de la daube). En fait je n'avais pas rajouté la ligne qu'il fallait dans le initializecomponent donc il ne pouvait pas exécuter ce que je lui demandais..
Et merci pour le conseil de la boucle infinie j'utiliserai une méthode moins merdique !
En tout cas merci merci merci !!

des frites !
0
Rejoignez-nous