[C#] Vérification d'une checkBox avec lancement d'une [Résolu]

Karibot 89 Messages postés mardi 19 janvier 2010Date d'inscription 21 juin 2016 Dernière intervention - 22 févr. 2010 à 22:42 - Dernière réponse : Karibot 89 Messages postés mardi 19 janvier 2010Date d'inscription 21 juin 2016 Dernière intervention
- 25 févr. 2010 à 16:22
Bonsoir à tous,
je bloque sur une application Windows Form et j'aimerai votre aide.
j'ai une fonction kws(file) qui traite et me génére un fichier plat. depuis mon interface, j'ai une checkbox qui demande à l'utilisateur s'il souhaite ou pas la génération de ce fichier (donc de faire le traitement ou pas).
voici donc mon code:
 
private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {
            myClass c = new myClass(textBox1.Text);
            
            string _sFile = textBox1.Text;
            if (checkBox1.Checked == true)
            {
                c.kws(_sFile); 
            }
            else
            {
                MessageBox.Show("Warning! The kws associated file will not be generated !");  
            }
        }



le problème c'est que quand je lance mon appli, le fichier ne se génére pas meme si la box est cochée...
pour infos, textBox1.Text contient la valeur de OpenFileDialog qui est donné en entrée à ma fonction kws()
voila, merci pour votre aide.
Afficher la suite 

Votre réponse

8 réponses

Meilleure réponse
Perecastorr 39 Messages postés lundi 10 novembre 2008Date d'inscription 7 septembre 2010 Dernière intervention - 25 févr. 2010 à 15:23
3
Merci
Salut,

Je pense que ton code est sur le mauvais évènement, tu devrais mettre ce code sur le click du bouton Start :
        private void btn_start_Click(object sender, EventArgs e)
        {
            if (checkBox1.Checked == true)
            {
                
                myClass c = new myClass(textBox1.Text);
                c.kws(textBox1.Text);
            }
            else
            {
                MessageBox.Show("Warning! The kws associated file will not be generated !");
            }

        }

Merci Perecastorr 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 100 internautes ce mois-ci

Commenter la réponse de Perecastorr
krimog 1863 Messages postés lundi 28 novembre 2005Date d'inscription 14 février 2015 Dernière intervention - 23 févr. 2010 à 10:23
0
Merci
Salut

Je doute fortement qu'il t'affiche la message box quand tu coches la check box.

Donc le problème vient de ta classe myClass (dont on a pas le code, donc on risque d'avoir du mal à t'aider).

Cependant, pourquoi utilises-tu textBox1.Text à la fois dans le constructeur de myClass mais également en paramètre de kws(), méthode de myClass ??

Krimog : while (!(succeed = try())) ;
- Nous ne sommes pas des décodeurs ambulants. Le style SMS est prohibé. -
Commenter la réponse de krimog
Karibot 89 Messages postés mardi 19 janvier 2010Date d'inscription 21 juin 2016 Dernière intervention - 25 févr. 2010 à 13:50
0
Merci
salut,
contrairement à ce que tu dis, le code s'affiche bien quand je décoche ma checkbox :)
mon problème c'est que quand je coche la box, le programme se lance automatiquement (sans attendre que j'ai cliqué sur le bouton start) :(
je ne sais donc pas comment faire pour vérifier la valeur renvoyée par checkbox.checked (true ou false). puis je faire cette vérification au sein de ma classe (au moment du traitement de la fonction kws ??) si oui, comment puis-je faire? parce que tous mes tests ont été vain...
encore merci.
Commenter la réponse de Karibot
Karibot 89 Messages postés mardi 19 janvier 2010Date d'inscription 21 juin 2016 Dernière intervention - 25 févr. 2010 à 15:40
0
Merci
+1 Perecastorr, c'était bien ça qui n'allait pas :)

une autre question:
quand mon programme fait son calcul, je n'ai aucun moyen de savoir quand il a fini...
y'a pas une fonction que je pourrait ajouter pour dire: quand tu as fini, tu écris "J'ai fini!" dans une boite de dialogue.
merci beaucoup!
Commenter la réponse de Karibot
Perecastorr 39 Messages postés lundi 10 novembre 2008Date d'inscription 7 septembre 2010 Dernière intervention - 25 févr. 2010 à 15:51
0
Merci
La c'est un peu plus complique, il te faut créer un delegate dans ta classe appelé qui appelera une fonction de ta classe appelante quand elle aura fini...
J'espère avoir été clair ?
Commenter la réponse de Perecastorr
Karibot 89 Messages postés mardi 19 janvier 2010Date d'inscription 21 juin 2016 Dernière intervention - 25 févr. 2010 à 15:57
0
Merci
tu as un exemple de code? comment tu crée un delagate?
Commenter la réponse de Karibot
Perecastorr 39 Messages postés lundi 10 novembre 2008Date d'inscription 7 septembre 2010 Dernière intervention - 25 févr. 2010 à 16:10
0
Merci
Bin la c'est de l'apprentissage du langage que tu as besoin, si tu veux vraiment réussir et comprendre il faut bidouiller des petites form pour bien comprendre le principe avant de le mettre en application.

Tiens quelques lien sympathique :
Délégués et évènement (en anglais)
MSDN delegate
Commenter la réponse de Perecastorr
Karibot 89 Messages postés mardi 19 janvier 2010Date d'inscription 21 juin 2016 Dernière intervention - 25 févr. 2010 à 16:22
0
Merci
Merci,
je vais essayer de me débrouiller avec ça.
Commenter la réponse de Karibot

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.