begin process at 2012 05 30 17:39:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Windows

 > 

Autre

 > 

sortir d'un évênement button_click à travers un autre évênement


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

sortir d'un évênement button_click à travers un autre évênement

lundi 23 novembre 2009 à 12:28:06 | sortir d'un évênement button_click à travers un autre évênement

elise42

Bonjour,

je code actuellement sous Winform C++, et j'ai plusieurs évènements button_click.

Lorsque je suis rentrer dans l'évènement button8_Click, si je viens à cliquer sur button7 alors que l'évènement button8_Click n'est pas terminer, je voudrait sortir de l'évènement button8_Click immédiatement sans que ce dernier évènement ne soit fini...

Es ce possible?
Merci d'avance
lundi 23 novembre 2009 à 13:30:56 | Re : sortir d'un évênement button_click à travers un autre évênement

juju12

Je ne sais pas comment se passe la gestion d'événements en winforms, mais les événements sont sans doute traités un par un.
Par contre, tu peux mettre ta tâche à effectuer dans un thread; ainsi l'événement b8_click aura simplement à lancer le thread puis retourner immédiatement, pendant que le traitement s'effectuera; dans la procédure pour le bouton 7, il suffira alors d'arrêter le thread.
Fonctions utiles de l'API : CreateThread(), TerminateThread()...
lundi 23 novembre 2009 à 20:23:22 | Re : sortir d'un évênement button_click à travers un autre évênement

BruNews

Administrateur CodeS-SourceS
JAMAIS d'appel direct aux fonctions de l'API sur les threads, que ce soit pour C++ comme depuis de l'interprété (le cas ici). C'est fuites mémoire à tout coup quand ce n'est pas plantage direct. Aucun constructeur de classe n'est appelé, destructeur idem.

ciao...
BruNews, MVP VC++
lundi 23 novembre 2009 à 21:20:30 | Re : sortir d'un évênement button_click à travers un autre évênement

juju12

Euh... quoi? J'ai simplement suggéré de lancer un thread lors du click sur le bouton, je vois pas le problème? Bien sûr, faut faire attention à ce qu'on fait dans le thread, mais à part ça...
lundi 23 novembre 2009 à 21:47:59 | Re : sortir d'un évênement button_click à travers un autre évênement

BruNews

Administrateur CodeS-SourceS
ben mais c'est là le proB
En .net on ne code pas vraiment, ce sont des classes absolument pour tout.
CreateThread() est donc à oublier.

Pour ce qui est de TerminateThread(), aucun code (du vrai) propre ne devrait jamais l'utiliser.

ciao...
BruNews, MVP VC++
mardi 24 novembre 2009 à 08:44:21 | Re : sortir d'un évênement button_click à travers un autre évênement

elise42

Merci pour vos réponses,
mais au final ça répond pas à mon problème
Quelqu'un a t'il une idée?
samedi 28 novembre 2009 à 20:29:44 | Re : sortir d'un évênement button_click à travers un autre évênement

rt15

Membre Club Administrateur CodeS-SourceS
Salut,

Comme l'a fait remarqué juju12 :

Tant que le code de button8_click est en cours d'exécution, tu ne peux pas cliquer sur button7 (Soit dit en passant : nomme tes contrôles !), car le thread principal ne peut pas s'occuper l'UI et exécuter le code de button8_click simultanément.

La solution est de créer un second thread dans le code de button8_click, thread qui va lui même faire le boulot couteux en temps.

Le code du button7 quant à lui devra par exemple setter un évènement (AutoResetEvent par exemple).

Le code exécuté par le "background" thread devra tester cet évènement à intervalle régulier. C'est beaucoup plus propre que abort.

Attention, le thread créé ne devra pas accéder directement à l'interface, comme expliqué ici.

Plus de doc là.


Cette discussion est classée dans : button, click, évènement, sortir, évênement


Répondre à ce message

Sujets en rapport avec ce message

vidéo for window [ par louis14 ] Je suis en train de développer une application avec video for window. je voudrais récupérer l'évènement de click souris lorsque je clique dans la fenê BUTTON [ par ToToL ] BonjoursMon probleme est le suivant : quand on cré un bouton on lui donne des "style" du genre : WS_VISIBLE. auriez vs un endroit ou il sont tous repe wParam et button [ par ToToL ] Et oui c'est encore moi avec mon histoire de bouton.je réexplique mon probleme : je voudrai que quand on reste cliquer sur le bouton, je le sache pour initialisation Radio bouton [ par mop666 ] salut!!!!alors voila:j'ai une appli ou je veux ouvrir une autre fenetre dans laquelle l'utilisateur pourrait faire des choix via radio button. Seuleme Default Button marche pas [ par guimou ] Salut, j'ai un pb avec une dialogbox : c'est une boite toute simple pour taper son mot de passe, ya juste un edit en mode password, un bouton OK et un intercepter double click [ par djl ] je voudrais intercepté l'evenement double click mais ca marche pas avec WM_LBUTTONDBLCLK, ya une autre solution ?je suis sous devcpp Comment utiliser les Ownerdraw button [ par fox88 ] je suis en train de realiser une application et je realise l'interface graphique avec l'API Win32. J'ai réussi à faire l'interface mais maintenant j'a sortir d'une boucle while infinie avec un bouton [ par bertrandbasch ] Bonjour,En fait je voudrai pouvoir lancer une boucle while à l'aide d'un bouton 1 qui pourrait être stoppé à l'aide d'un bouton stop.Il me faut cette disable a button, comment faire???? [ par youpiyoyo ] comment faire pour rentre un boutton disable????youpi :) désactiverce p***** de deboggeur vc++ [ par leprov ] salut a tousvoila, des ke jai une application qui fait un plantage a la con, meme un click droit qui plante (en principe le click droit marche pas fau


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,437 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales