begin process at 2013 05 23 22:46:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Linux

 > 

GUI

 > 

bouton dans WS_PAINT


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

bouton dans WS_PAINT

mercredi 8 août 2012 à 16:43:42 | bouton dans WS_PAINT

23253

bonjour,
voila je souhaite mètre un simple bouton dans ma fenêtre si une condition est validé...(pas compliqué).
donc je fait ça :
Code C/C++ :
 
case WM_PAINT:{
    printf("0.0\n");
    HBITMAP bitmap;
    HDC dc;
    PAINTSTRUCT ps;
    bitmap = (HBITMAP)LoadImage(NULL,adresse_image_bmp,IMAGE_BITMAP,0,0,LR_LOADFROMFILE);

    dc = BeginPaint(fenetrePrincipale, &ps);

    switch (mode_de_marche){
        case 0:{
            break;
        }
        case 1:{    //cas du mode n°1
            printf("0.1\n");
            edit[1] = SURFACE_REFERENCE (fenetrePrincipale);
            edit[2] = CreateWindow("BUTTON", "Selection de Reference", WS_CHILD | WS_VISIBLE, 50,90, 200,20, fenetrePrincipale, (HMENU)ID_B_SURFACE_REF, instance, 
            edit[3] = CreateWindow("BUTTON", "Selection Surface de Travail", WS_CHILD | WS_VISIBLE, 50,180, 200,20, fenetrePrincipale, (HMENU)ID_B_SURFACE_TRAVAIL, instance, NULL);
            edit[4] = SURFACE_TRAVAIL (fenetrePrincipale);
            edit[5] = MAX (fenetrePrincipale);
            edit[6] = MIN (fenetrePrincipale);
            edit[7] = PIECE (fenetrePrincipale);
            edit[8] = REBUT (fenetrePrincipale);
            break;
        }
        default:{ break;
        }
    }
    DrawState(dc,NULL,NULL,(long)bitmap,NULL,decalage_x,decalage_y,640,480,DST_BITMAP);
    EndPaint(fenetrePrincipale, &ps);
    DeleteObject(bitmap);
    printf("0.2\n\n");
    break;
}


et là quand je zyeute un peut ma console il m'apparait que c'est bizarre
je voix ça qui defile :
Code :
0.0
0.1
0.2

0.0
0.1
0.2

0.0
0.1
0.2

0.0
0.1
0.2

0.0
0.1
...

donc là je comprend pas, donc si quelqu'un sait pourquoi ...
merci d'avance
jeudi 9 août 2012 à 08:39:12 | Re : bouton dans WS_PAINT

BruNews

Administrateur CodeS-SourceS
Ne pas faire de CreateWindow() dans WM_PAINT qui est le type meme d'event qui se produit en rafale.

ciao...
BruNews, MVP VC++
jeudi 9 août 2012 à 21:34:49 | Re : bouton dans WS_PAINT

23253

je m'en doutai un peut mais alors comment je fait pour créer des bonton "conditionnés"
vendredi 10 août 2012 à 02:25:30 | Re : bouton dans WS_PAINT

racpp

Administrateur CodeS-SourceS
Réponse acceptée !

Salut,
Une solution consisterait à créer autant de boutons que tu veux pendant le traitement de WM_CREATE (ou WM_INITDIALOG pour une boite de dialogue). Ces boutons ne doivent pas avoir le style WS_VISIBLE. Ainsi, en utilisant ShowWindow() tu pourras montrer ou cacher celui ou ceux que tu veux quand tu veux selon tes conditions.
vendredi 10 août 2012 à 18:58:22 | Re : bouton dans WS_PAINT

23253

ok je vais tester ça merci


Cette discussion est classée dans : edit, ws, bitmap, surface, fenetreprincipale


Répondre à ce message

Sujets en rapport avec ce message

Ecrire dans une edit box ?? [ par MoDDiB ] comment ecrire dans une edit box crée comme ceci :Handle[i] = CreateWindowEx(WS_EX_OVERLAPPEDWINDOW, "EDIT", "", WS_VISIBLE|WS_CHILD|ES_AUTOHSCROLL|ES Utilisation de tab dans une appli win32 [ par zibo3 ] Bonjour, j'utilise le code suivant dans ma fenêtre pour créer deux champs Edit et j'aimerai naviguer à l'aide de la touche Tab mias mon ordinateur eme pb de CreateWindowEx [ par graall ] Bonjour,j'ai un pb dans une API ://---------------------------------------// dans le fichier mainlib.hpp ://--------------------------------------- (win32) evenement sur edit [ par mogwai93 ] bonjour, j'aimerais recuperer les evenements d'appui des touches speciales (TAB et ENTREE) quand un objet edit à le focus : HWND mon_edit = CreateWi [API Win32 sans MFC] Ajouter et récuperer du texte d'un EDIT [ par nitrique ] Bonjour à tous, J'aimerais savoir comment Ajouter et récuperer du texte d'un EDIT créé comme suit:case WM_CREATE:hEdit = CreateWindow(_T("EDIT"),_T( [API Win32 sans MFC] Manipulation EDIT et CString [ par nitrique ] Bonjour à tous, Bonjour à tous, J'aimerais savoir comment Ajouter et récuperer du texte d'un EDIT Format Bitmap [ par Galmiza ] Salut,J'ai crée une surface DirectX (8.1) et j'y pose une bitmap (fait sous paint) d'une profondeur de couleur de 4 bits.Le format de la surface est D DirectX pb avec la surface primaire sans le plein écran [ par Diabolus ] Salut à tous !J'ai un problème concernant le mode plein écran de Direct Draw que je veux supprimer.J'arrive enfin a créer une simple fenêtre (qui n'es Comment faire un \n dans un edit? [ par by_rabbit_08 ] Bonjour!Grâce à la fonction SetDlgItemText, je cherche à inscrire du texte dans un edit. Dans ce texte, il y a un \n pour un retour à la ligne.Mais lo combobox [ par fignon ] Bonjour à tous,j'ai un petit souci avec les combobox, dont je suis sûr vous n'aurez aucun mal à résoudre.Je déclare ma combobox comme suit :edit_port_


Nos sponsors


Sondage...

CalendriCode

Mai 2013
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

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 : 1,217 sec (4)

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