IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Visual C++ Discussion :

[win32] Mise a jours d'un STATIC


Sujet :

Visual C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Iphelias
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 126
    Par défaut [win32] Mise a jours d'un STATIC
    Bonjour,

    Voila j'ai un petit Soucis en fait dans mon application win32, j'ai une scrollbar et j'aimerais mettre à jour un champ correspondant à la valeur de cet Scrollbar.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     
    case WM_HSCROLL:
     GetScrollInfo((HWND)lParam, SB_CTL, &si);
             switch (LOWORD(wParam))
               {
                  case SB_PAGEUP:
                    si.nPos -= 2;
                    if(si.nPos < si.nMin) si.nPos = si.nMin ;
                    break;
     
                  case SB_PAGEDOWN:
                    si.nPos += 2;
                    if(si.nPos > si.nMax) si.nPos = si.nMax ;
                    break;
     
                  case SB_LINEUP:
                    if(si.nPos > si.nMin) si.nPos--;
                    break;
     
                  case SB_LINEDOWN:
                    if(si.nPos < si.nMax) si.nPos++;
                    break;
     
                  case SB_THUMBPOSITION:
                    si.nPos = HIWORD(wParam);
                    break;
                }
                     si.fMask  = SIF_POS;
     
                    itoa(si.nPos,buffer,10);
                    SetWindowText(lblhWnd1, buffer);
                    //TextOut(GetDC(hwnd),0,0,buffer,strlen(buffer));
     
                    SetScrollInfo((HWND)lParam, SB_CTL, &si, TRUE); 
     
                return 0;
    Mais cela ne marche pas avec le SetWindowText... en effet le Static "lblhWnd1" ne change pas ... ou alors change tres rapidement avant de reprendre la valeur 0. Ce qui est etrange c'est que TextOut fonctionne ...
    Par contre si je laisse les 2 cela ne marche plus...

  2. #2
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    comment est initialisé lblhWnd1 ?

  3. #3
    Membre confirmé Avatar de Iphelias
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 126
    Par défaut
    Citation Envoyé par nico-pyright(c)
    comment est initialisé lblhWnd1 ?
    Comme cela :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    lblhWnd1 = CreateWindowEx(0, "STATIC", "11", WS_VISIBLE|WS_CHILD, 550,70,220,13, hwnd, (HMENU)ID_STATIC1, GetModuleHandle(NULL), NULL);

  4. #4
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    quand tu dis qu'il change très rapidement, ca veut dire quoi ? qui le change ?

  5. #5
    Membre confirmé Avatar de Iphelias
    Homme Profil pro
    Développeur Java
    Inscrit en
    Février 2007
    Messages
    126
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Luxembourg

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Février 2007
    Messages : 126
    Par défaut
    Citation Envoyé par nico-pyright(c)
    quand tu dis qu'il change très rapidement, ca veut dire quoi ? qui le change ?
    En fait au moment de l'utilisation de ma Scrollbar ... la valeur du static devrait se mettre à jour en utilisant :

    SetWindowText(lblhWnd1, buffer);

    Mais la valeur change une fraction de seconde et revient sur 0.
    De plus j'ai remarqué que le fait de vouloir afficher la valeur de la scrollbar dans un static, annule le mouvement de ma scrollbar. en effet Celle ci reste toujours dans son état initial.

    Par contre lorsque j'affiche la valeur de la scrollbar par :

    TextOut(GetDC(hwnd),0,20,buffer,strlen(buffer));

    Alors la valeur s'affiche normalement à l'ecran, et la scrollbar fonctionne. Mais TextOut n'est pas tres propre.
    De même si je n'essai pas d'afficher la valeur de la scrollbar, la scrollbar fonctionne normalement.


    Je Sais plus vraiment quoi faire en faite lol ....

  6. #6
    Rédacteur
    Avatar de nico-pyright(c)
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    6 414
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 6 414
    Par défaut
    je vois pas pourquoi le handle du static changerait sans qu'il y ait une action

Discussions similaires

  1. Mises à jour des paquetages en mode console
    Par Memnoch31 dans le forum Debian
    Réponses: 6
    Dernier message: 16/05/2004, 16h30
  2. problème de mise a jour
    Par leeloo076 dans le forum ASP
    Réponses: 3
    Dernier message: 15/04/2004, 16h09
  3. Mise a jour mandrake linux 9.2
    Par Otacan dans le forum Mandriva / Mageia
    Réponses: 2
    Dernier message: 02/04/2004, 22h47
  4. [] [Install] Problème de mise à jour des dll
    Par pepper dans le forum Installation, Déploiement et Sécurité
    Réponses: 4
    Dernier message: 23/01/2003, 22h34
  5. Visualisation des mise à jour en réseau
    Par fandor7 dans le forum Paradox
    Réponses: 2
    Dernier message: 06/12/2002, 15h54

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo