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

Langage C++ Discussion :

Style PBS_MARQUEE avec ProgressBar


Sujet :

Langage C++

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    528
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 528
    Par défaut Style PBS_MARQUEE avec ProgressBar
    Bonjour,

    J'essaie de mettre en place une barre de progression mais j'ai un souci avec l'option "PBS_MARQUEE"
    Apres avoir eu des problèmes de compilation en mettant le style PBS_MARQUEE directement dans le CreateWindow, j'ai fait ceici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    InitCommonControls();
                  hwndPB = CreateWindowEx(0, PROGRESS_CLASS, (LPSTR) NULL, 
                                          WS_CHILD | WS_VISIBLE|PBS_SMOOTH,
    		             5, 40, 380, 15, 
                                          hwnd, (HMENU)1,hInst, NULL);
                  style = GetWindowLong(hwndPB, GWL_STYLE);
                  style = style | PBS_MARQUEE;
                  SetWindowLong(hwndPB, GWL_STYLE, style);
    //              SendMessage(hwndPB, PBM_SETRANGE, 0, MAKELPARAM(0, 20)); 
    //              SendMessage(hwndPB, PBM_SETSTEP, (WPARAM) 1, 0);
    //              SendMessage(hwndPB, PBM_SETBKCOLOR, 0, (LPARAM)RGB(255,255,255));
    		      SendMessage(hwndPB, PBM_SETBARCOLOR, 0, (LPARAM)RGB(51,204,0));
                  SendMessage(hwndPB, PBM_SETMARQUEE, (WPARAM) TRUE,(LPARAM)150 );
    Malheureusement, ca ne fonctionne pas ...
    Si quelqu'un peut me donner une piste,

    Merci d'avance

  2. #2
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 246
    Par défaut
    Je ne sais pas si ça va t'aider, mais en VB pour faire fonctionner le style MARQUEE correctement sur une ProgressBar, il faut activer une option au niveau du projet (de l'exécutable qui en résultera donc) qui s'appelle "Styles visuels XP"

  3. #3
    Membre Expert

    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2007
    Messages
    1 895
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Septembre 2007
    Messages : 1 895
    [FAQ des forums][FAQ Développement 2D, 3D et Jeux][Si vous ne savez pas ou vous en êtes...]
    Essayez d'écrire clairement (c'est à dire avec des mots français complets). SMS est votre ennemi.
    Evitez les arguments inutiles - DirectMachin vs. OpenTruc ou G++ vs. Café. C'est dépassé tout ça.
    Et si vous êtes sages, vous aurez peut être vous aussi la chance de passer à la télé. Ou pas.

    Ce site contient un forum d'entraide gratuit. Il ne s'use que si l'on ne s'en sert pas.

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    528
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 528
    Par défaut
    Bonjour,
    J'ai regardé la doc ainsi que ce lien
    Le problème est que je developpais avec Visual Studio 2005 (sous XP Pro) et que depuis peu je suis passé sur Visual Studio 2008 (installé sur Seven Pro)
    Auparavant, et encore maintenant je compile avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #define _WIN32_WINNT 0x0500
    #define _WINVER      0x0500
    Tout mon code est en C (API Win32) et ne fonctionne plus si j'enlève ces directives ...
    De même si j'essaie avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #pragma comment(linker,"\"/manifestdependency:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
    Dans les ressources, le fait d'appliquer l'option "Marquee" sur un controle ProgressBar dans un dialogue ne passe pas non plus évidement ...

    Comment faire ?

    Merci encore

  5. #5
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 246
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 246
    Par défaut
    D'après plusieurs messages sur divers forums, il semblerait que en insérant la progressbar en tant que ressource (plutot que d'utiliser CreateWindowsEx) et de positionner sa propriété Marquee à True, cela fonctionne

  6. #6
    Membre éclairé
    Profil pro
    Inscrit en
    Novembre 2003
    Messages
    528
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2003
    Messages : 528
    Par défaut
    Citation Envoyé par sevyc64 Voir le message
    D'après plusieurs messages sur divers forums, il semblerait que en insérant la progressbar en tant que ressource (plutot que d'utiliser CreateWindowsEx) et de positionner sa propriété Marquee à True, cela fonctionne
    J'ai retiré les déclarations de _WIN32_WINNT et _WINVER et j'ai ajouté
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #pragma comment(linker,"\"/manifestdependency:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
    Le style PBS_MARQUEE fonctionne !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 08/11/2007, 13h33
  2. Copier fichier avec progressbar
    Par marcus333 dans le forum Composants VCL
    Réponses: 7
    Dernier message: 13/09/2005, 20h55
  3. Pb style display avec Firefox mal appliqué
    Par frochard dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 13/07/2005, 23h48
  4. [JProgressBar] style de la progressBar
    Par la.musaraigne dans le forum Composants
    Réponses: 5
    Dernier message: 28/10/2004, 16h26
  5. Comment utiliser les styles XP avec Dev-C++?
    Par abraxas dans le forum Dev-C++
    Réponses: 3
    Dernier message: 05/10/2003, 19h47

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