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] barre d état


Sujet :

Visual C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Par défaut [win32] barre d état
    J aurais besoin d'une barre d état un peu particulière, je voudrais qu elle soit séparée en plusieurs parties ou plus concretement mettre plusieurs barres d'état cote a cote avec des séparateurs entre elles. Déja en placer une bien comme il faut ça peut aller encore mais en mettre 3/4 bout a bout ça risque d etre dur .


    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
    case WM_CREATE:
    {
     
    HFONT hFont;
    hEdit = CreateWindowEx(WS_EX_OVERLAPPEDWINDOW,"edit","", 
    WS_BORDER | WS_CHILD | WS_SIZEBOX |WS_VISIBLE | ES_MULTILINE | WS_VSCROLL | ES_LEFT, 0, 0, 0, 0, hwnd_F, NULL, hinst, NULL);
    hFont = (HFONT)GetStockObject(BLACK_BRUSH);/
    SendMessage(hEdit,WM_SETFONT,(UINT)hFont,TRUE);
    SendMessage(hEdit, EM_SETMARGINS, EC_LEFTMARGIN | EC_RIGHTMARGIN,MAKELONG(5,5));
    InitCommonControls();
    hsb = CreateStatusWindow(WS_CHILD | WS_VISIBLE, "Texte", hwnd_F, -1);
     
    case WM_SIZE:
    {
    MoveWindow(hEdit, 0, 0, LOWORD(lParam), HIWORD(lParam), TRUE);
    RECT sbRect;
    UINT sbheight;
    GetWindowRect(hsb, &sbRect);
    sbheight = sbRect.bottom - sbRect.top;
    MoveWindow(hEdit, 0, 0, LOWORD(lParam), HIWORD(lParam)-sbheight,TRUE);
    MoveWindow(hsb, 0, HIWORD(lParam)-sbheight, LOWORD(lParam),sbheight, TRUE);
    return 0;            
    }

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Déjà, tu dois choisir, car tu dis une chose et son contraire: Tu veux une barre d'état en plusieurs parties ou plusieurs barres d'état ?

    J'ignore si je peux t'aider dans le second cas. Mais dans le premier cas, il suffit d'envoyer un message SB_SETPARTS à ta barre d'état.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Par défaut
    en fait le premier cas servait juste a expliquer ce que je voulais faire, je ne pensais pas qu il était possible de séparer une barre d état. mais tout compte fait jvé opter pour ta solution.

  4. #4
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Par défaut
    ton aide m est précieuse mais j aurais besoin d un tout petit coup de pouce
    j ai demandé dans un premier temps deux parties, donc ça donne :

    SendMessage(hsb , SB_SETPARTS , 2 , ?? );

    mais je ne vois pas ce qu ils attendent dans le dernier paramètre, ils veulent un tableau avec chaque abscisse ??

    j ai essayé avec un tableau de 3valeurs, (0,300,-1) mais ça donne pas grand chose mais c est compilable

  5. #5
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    C'est ça.
    Tu crées un tableau local de int avec les valeurs que tu veux, et tu passes l'adresse de ce tableau dans le SendMessage().

    Exemple:
    Code C++ : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    {
        int parts[] = { 100, -1};
        SendMessage(hsb , SB_SETPARTS , 2 , reinterpret_cast< LPARAM >(parts) ); 
    }
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  6. #6
    Membre chevronné
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    417
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Mai 2007
    Messages : 417
    Par défaut
    merci ça marche, j avais fait un tableau de char et en plus j ai mis le bord gauche, enfin bref ....

    encore merci

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

Discussions similaires

  1. la barre d'état...
    Par zarbiman dans le forum IHM
    Réponses: 3
    Dernier message: 14/06/2005, 08h56
  2. Réponses: 20
    Dernier message: 01/06/2005, 09h37
  3. Affichage d'un texte dans la barre d'état!
    Par chuart dans le forum Balisage (X)HTML et validation W3C
    Réponses: 7
    Dernier message: 12/04/2005, 12h47
  4. Pb d'affichage dans barre d'état
    Par linou dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 01/04/2005, 11h21
  5. Réponses: 8
    Dernier message: 20/12/2004, 17h42

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