Accueil > Forum > > > > Creation d'un Thread en MFC et arret par un bouton
Creation d'un Thread en MFC et arret par un bouton
dimanche 20 juin 2004 à 15:23:58 |
Creation d'un Thread en MFC et arret par un bouton

djtiaf
|
Bonjour à tous, Je cherche à créer un Tread tout simple : fonction Thread du bouton Start { while (arret=false) { Sleep(1000) // on laisse 1 sec a l'utilisateur pour appuyer sur un bouton Si on appuie sur le bouton STOP, arret=true et on sort de la boucle; } } Voila, je pense que c'est pas très dur, j'ai fait quelques recherche, mais je n'ai pas trouvé comment arrêter un Thread quand on veut. Merci d'avance pour m'aider . DJ T.
|
|
dimanche 20 juin 2004 à 15:27:38 |
Re : Creation d'un Thread en MFC et arret par un bouton

BruNews
|
mets une variable int bstop = 0; ton bouton: bstop = 1;
dans thread: while(!bstop) { ..... } return 0;
ciao... BruNews, Admin CS, MVP Visual C++
|
|
dimanche 20 juin 2004 à 16:11:09 |
Re : Creation d'un Thread en MFC et arret par un bouton

djtiaf
|
Ouai, je vois bien ce que tu veux dire. Mais le problème c'est que je ne sais pas trop comment déclarer un thread (je commence aujourd'hui à m'interesser au Thread !)
Et j'ai vu qu'il existe une section critique, mais je ne sais pas trop si ça pourrait servir.
Voici une partie de mon prog :
void CMenuSimulation::OnButtonExe() {
CListBox* pListe=(CListBox*)GetDlgItem(IDC_LIST_SORTIE);
while (Arret==0) { ... pListe->InsertString(-1, " bla bla bla"); // je dois afficher dans une ListeBox ... }
} void CMenuSimulation::OnButtonStop() { Arret=1; }
Si on pouvait m'aider à remplir mon prog pour déclarer le Thread, ça serait fantastic !!! Merci d'avance pour votre aide
DJ T.
|
|
dimanche 20 juin 2004 à 16:15:40 |
Re : Creation d'un Thread en MFC et arret par un bouton

BruNews
|
En direct API serait ok pour t'aider mais MFC, tres peu pour moi.
ciao... BruNews, Admin CS, MVP Visual C++
|
|
dimanche 20 juin 2004 à 16:18:21 |
Re : Creation d'un Thread en MFC et arret par un bouton

djtiaf
|
OK BruNews, merci quand meme ;-)
DJ T.
|
|
dimanche 20 juin 2004 à 16:54:53 |
Re : Creation d'un Thread en MFC et arret par un bouton

djtiaf
|
Bon, j'avance plutot bien. Mais il ne me reste plsu que de l'affichage à faire... (pourtant c le truc le + facile) mais j'ai une erreur : error C2660: 'GetDlgItem' : function does not take 1 parameters. Cette erreur vient de ma CListeBox*.
Voici le bout de prog :
DWORD WINAPI Thread_Test( LPVOID lpParam ) {
// hstatus = GetDlgItem(hdlg, IDC_LIST1); do {
Arret+=1; CListBox* pListe=(CListBox*)GetDlgItem(IDC_LIST1);
Sleep(100L);
/*-- on boucle tant que l'on n'a pas recut d'événement stopper --*/ }while( WaitForSingleObject( d_eventStop, D_TIME_OUT_TEST ) == WAIT_TIMEOUT ); CloseHandle( d_eventStop ); d_eventStop = NULL;
return 0; }
Voila, si quelqu'un pouvait m'aider, ça serait cool. (en attendant, je vais continuer mes recherches...)
|
|
dimanche 20 juin 2004 à 17:16:59 |
Re : Creation d'un Thread en MFC et arret par un bouton

BruNews
|
Faudrait que tu passes pointeur sur fenetre mere pour faire ton GetDlgItem dessus.
ciao... BruNews, Admin CS, MVP Visual C++
|
|
dimanche 20 juin 2004 à 17:43:30 |
Re : Creation d'un Thread en MFC et arret par un bouton

djtiaf
|
Ouai, je comprends ce qu'il faut faire. mais je ne vois pas comment le faire pointer. t'aurais pas une solution par hasard ?
merci BruNews DJ T.
|
|
dimanche 20 juin 2004 à 17:48:56 |
Re : Creation d'un Thread en MFC et arret par un bouton

BruNews
|
passe pointeur de ta CDialog en param du thread.
ciao... BruNews, Admin CS, MVP Visual C++
|
|
dimanche 20 juin 2004 à 18:56:13 |
Re : Creation d'un Thread en MFC et arret par un bouton

djtiaf
|
Ok, j'ai déclaré un pointeur en param du thread : voici
DWORD WINAPI Thread_Test( LPVOID lpParam) { CESSAICPPDlg* pObject = (CESSAICPPDlg*)lpParam; // ça marche.
if ((pObject == NULL) || !pObject->IsKindOf(RUNTIME_CLASS (CESSAICPPDlg))) // ça marche pas.
return 1; do {
Arret+=1; pObject->OnButtonAff();
Sleep(100L);
}while( WaitForSingleObject( d_eventStop, D_TIME_OUT_TEST ) == WAIT_TIMEOUT ); CloseHandle( d_eventStop ); d_eventStop = NULL;
return 0; }
Je ne comprends pas pourkoi cette instruction " if ((pObject == NULL) || !pObject->IsKindOf(RUNTIME_CLASS (CESSAICPPDlg))) " ne marche pas ???
pourtant ma classe s'appelle bien CESSAICPPDlg.
et la fonction OnButtonAff() permet d'afficher la variable Arret
voila merci pour les tuyaux.
DJ T.
|
|
Cette discussion est classée dans : bouton, arret, creation, mfc, thread
Répondre à ce message
Sujets en rapport avec ce message
Multitache et MFC [ par tigerskin ]
Bonjour a tous.J'ai un petit soucis je voudrais réaliser un bouton d'arret d'urgence pour une application qui execute une tache en fond et qui me blo
MFC en C++ [ par ja92 ]
Bonjour ,Débutant en programmation je souhaite réaliser une application en MFC qui afficherait une fenetre avec un texte.Ce texte serait composé d' un
bouton retour en mfc [ par ja92 ]
Bonjour ,J' ai crée un bouton dans une MFC comment faire pour que lorsqu on appui dessus on revient a la page précédente ?
Creation d'une fenetre d configuration [ par bordeaux ]
Bonjour,j'aimerais créer une action sur un élément qui permettent de faire la meme chose que le bouton options de mozilla par exemple.EN fait j'ai dej
Creation de timer [ par julienbornet ]
Bonjour j'ai besoin de creer un timer qui verifie l'etat d'un bouton (s'il a ete cliquer ou non) pendant qu'une autre action s'effectue.Pourr etre plu
Création button avec VC++ [MFC] [ par stefo666 ]
Salut à tous!J'ai crée un bouton à l'aide du code suivant:cmdhWnd = CreateWindowEx(0, "BUTTON", "Caption", WS_CHILD | WS_VISIBLE | BS_AUTOCHECKBOX | B
Bouton tournant en MFC [ par med_mt ]
Je suis débutant dans l'utilisation de MFC, et je veux réaliser un bouton tournant dans mon interface comme celui de l'oscilloscope. Est-ce que quelqu
bouton reduire sur MFc [ par thejrem ]
bonjour j'aimerai votre aide pour rajouté a un projet visaul studio MFC le bouton reduire en haut a droite a coté de la croix pour fermé quelqu'un au
thread pour visual c++ express 2005 [ par maaanuuu ]
bonjour voila je sais que cela parait tout con mais je ne sais pas du tout comment utiliser des thread sous visual c++ 2005...Voila je veux clicker su
État d'un bouton MFC [ par NiFF ]
Bonjour tout le monde.Comment fait-on pour changer l'état d'un bouton? J'ai créé sur ma feuille MFC un bouton avec la propriété "Disabled". Comment fa
Livres en rapport
|
Derniers Blogs
IMAGINE CUP 2012, MAKE A SIGN EN FINALEIMAGINE CUP 2012, MAKE A SIGN EN FINALE par junarnoalg
Voilà qui est fait, la nouvelle est officielle ! L'équipe belge "Make a Sign" va au pays des kangourous défendre son projet dans la catégorie Software Design. http://www.imaginecup.com/CompetitionsContent/Competition/WorldwideFinalists.aspx V...
Cliquez pour lire la suite de l'article par junarnoalg KINECT 1.5 IS OUT !KINECT 1.5 IS OUT ! par Vko
La version 1.5 du Kinect For Microsoft vient tout juste de sortir ! Plein de nouveautés: Tracking de squelette en Near Mode Détection en position assise Détection faciale avec un SDK dédié Documentation et des guideline (enfin) Un out...
Cliquez pour lire la suite de l'article par Vko LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) LES ACTUALITéS DE LA SEMAINE SUR C2I.FR (14 MAI - 20 MAI) par richardc
Mise à jour des Web API du 14 Mai
Réservez dès maintenant votre journée du 20 juin pour le Windows Azure Dev Camp 2012 à Paris
Mise à jour de Team Foundation Service
MechCommander 2 sur Windows 8
Entity Framework 5 Release Candidate e...
Cliquez pour lire la suite de l'article par richardc REACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITERREACTIVE EXTENSIONS : CONSOMMER DES SERVICES AVEC RX PARTIE 3, LES PIèGES à éVITER par Groc
Une mauvaise utilisation de rx lors de l'écriture d'une couche d'accès à des services peut conduire à des cas embarassants avec des erreurs mal gérées, des appels qui ne partent lorsqu'ils le devraient, et même des résultats incorrects . le tout nuis...
Cliquez pour lire la suite de l'article par Groc SHAREPOINT BLOG SITE, PROBLèME D'ARCHIVESSHAREPOINT BLOG SITE, PROBLèME D'ARCHIVES par junarnoalg
Dernièrement, nous avons migré le site
myTIC
vers un nouveau serveur SharePoint 2010. Dans les contenus que nous vouloins récupérer, nous avions un certain nombre de blogs.
Nous avons utilisé les commandes Power...
Cliquez pour lire la suite de l'article par junarnoalg
Logiciels
sDEVIS-FACTURES vlPRO (8.1.0.3)SDEVIS-FACTURES VLPRO (8.1.0.3)sDEVIS-FACTURES vlPRO a été mis au point pour les particuliers, créateurs, entrepreneurs, artisa... Cliquez pour télécharger sDEVIS-FACTURES vlPRO 974 Application Server (12.2.4.6)974 APPLICATION SERVER (12.2.4.6)Développez de puissantes applications dans un environnement de 'cloud computing', clusterisé, séc... Cliquez pour télécharger 974 Application Server vPicture (1.4.2.1)VPICTURE (1.4.2.1)Avec vPicture, hébergez vos images facilement et rapidement.
vPicture est un utilitaire simple, ... Cliquez pour télécharger vPicture Easy-Planning (2.2.1.6)EASY-PLANNING (2.2.1.6)Easy-Planning permet de créer des plannings sous la représentation de diagrammes et est adapté au... Cliquez pour télécharger Easy-Planning COM-BACKUP (2.0)COM-BACKUP (2.0)
COM-BACKUP est un logiciel de sauvegarde qui permet de planifier les sauvegardes de vos dossiers ...
Cliquez pour télécharger COM-BACKUP
|