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

wxWidgets Discussion :

Problème de positionnement d'objets au sein d'un sizer


Sujet :

wxWidgets

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 34
    Points : 28
    Points
    28
    Par défaut Problème de positionnement d'objets au sein d'un sizer
    Bonjours à tous.
    J'ai un gros souci avec les sizers. J'ai quelques problèmes à les utiliser correctement. En effet je cherche à afficher un wxListCtrl avec en-dessous un wxTextCtrl en multi-lignes. Je souhaite que le wxTextCtrl ai une taille fixe. C'est-à-dire que lorsque je modifierais la taille de ma fenêtre, c'est le wxListCtrl qui diminuera et non le wxTextCtrl. Or, pour l'instant le wxTextCtrl et wxListCtrl sont confondus: ils se superposent, comme on peut le voir sur la capture d'écran.
    Voici le code:
    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
    wxBoxSizer *pTopSizer = new wxBoxSizer( wxVERTICAL );
     
        myListCtrl = new wxListCtrl(    this,
                                        ID_WXLISTCTRL1,
                                        wxPoint(0,0),
                                        wxSize(this->GetSize().x+570, this->GetSize().y),
                                        wxLC_REPORT|wxSUNKEN_BORDER|wxLC_HRULES|wxLC_VRULES|wxLC_ALIGN_LEFT,
                                        wxDefaultValidator,
                                        wxT("wxListCtrlNameStr") );
     
     
        myListCtrl->SetFont(wxFont( 8, wxSWISS, wxNORMAL, wxFONTFLAG_ANTIALIASED, false, wxT("Courier New")));
     
        pTopSizer->Add( myListCtrl, 0, wxEXPAND );
     
        myLog = new wxTextCtrl( this,
                                wxID_ANY,
                                _("---------- MASCOTT ----------"),
                                wxDefaultPosition,
                                wxSize(myListCtrl->GetSize().x, 100),
                                wxTE_MULTILINE | wxTE_READONLY | wxTE_DONTWRAP);
     
        pTopSizer->Add( myLog, 0, wxEXPAND );
     
        SetSizer(pTopSizer);
        pTopSizer->SetSizeHints( this );


    Merci d'avance.

  2. #2
    Membre émérite
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Points : 2 568
    Points
    2 568
    Par défaut
    Il manque un Layout pour organiser tout cela à la fin.
    Sinon c'est à peu près bon.

    Juste quelques détails:

    - Pour le wxListCtrl
    -1 et -1 indique de s'étendre au maximum en x et y (ce n'est pas nécessaire, mais cela indique lorsqu'on relit le code de savoir que ce composant est étendu)
    - Pour le wxTextCtrl
    Placer -1 en premier paramètre (qui indique qu'il prend la taille maximum sur l'axe x)

    - Pour l'ajout aux sizers
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ...
    // Ajouter 1 avec wxEXPAND pour indiquer qu'il doit sétendre au maximum sur l'axe x et y
    pTopSizer->Add( myListCtrl, 1, wxEXPAND );
    ...
    // 0 permet ici de ne pas s'étendre sur l'axe y
    pTopSizer->Add( myLog, 0, wxEXPAND );

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 34
    Points : 28
    Points
    28
    Par défaut
    Merci pour la réponse. C'était exactement ça: pas de layout et de wxSize(-1, -1). Et puis c'était un peu brouillon.

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

Discussions similaires

  1. [CSS] positionner un objet
    Par car dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 24/08/2005, 14h31
  2. [Jtree][JScrollPane] problème de positionnement
    Par billynirvana dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 07/07/2005, 16h53
  3. [hibernate]Problème de récupération d'objet...
    Par roxx62 dans le forum Hibernate
    Réponses: 1
    Dernier message: 07/07/2005, 11h36
  4. Réponses: 14
    Dernier message: 02/03/2005, 18h15
  5. Problème pour positionner une liste déroulante
    Par ouckileou dans le forum XSL/XSLT/XPATH
    Réponses: 3
    Dernier message: 30/09/2004, 01h05

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