1. #1
    Invité de passage
    Inscrit en
    août 2009
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : août 2009
    Messages : 20
    Points : 1
    Points
    1

    Par défaut wxButton prend toute ma frame

    Salut à tous

    je suis en train de faire des tests sur wxwidget et j'ai incorporé sur une frame
    un bouton => cependant malgrès avoir défini la taille du bouton celui -ci prend toute la frame

    tandis que si je mets 2 boutons alors ils sont bien de la taille défini

    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
    27
     
    #include "../include/fenetre.h"
    //#include "../include/class_id.h"
    //-------------------------------
     
    /*BEGIN_EVENT_TABLE(Fenetre,wxFrame)
        EVT_BUTTON(1000, Fenetre::OnQuitter)
    END_EVENT_TABLE()*/
    //wxID_ANY
    //------------------------------------
     
    Fenetre::Fenetre(const wxString & prmTitre, wxPoint & prmOrigine, wxSize & prmTaille)
        :wxFrame(NULL, -1, prmTitre, wxPoint(50,50), wxSize(500,500))
    {
           // Centre() ;
           //
     
     
           ptr2 = new wxButton(this,1001,wxT("essai"),wxPoint(100,100),wxSize(50,50)) ;
            //ptrBouton = new wxButton(this,1000,wxT("test"),wxPoint(20,50)) ;
            //ptrBouton->SetSize(20,20) ;
    }
    //---------------------------------------
    /*void Fenetre::OnQuitter(wxCommandEvent & WXUNUSED(prmEvenement))
    {
        this->Close(true) ;
    }*/
    Un grand merci pour les retours

  2. #2
    Membre confirmé Avatar de wxXav
    Homme Profil pro
    Développeur amateur
    Inscrit en
    décembre 2008
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : décembre 2008
    Messages : 163
    Points : 271
    Points
    271

    Par défaut

    Salut.

    C'est en fait un comportement "normal".

    Si tu n'ajoutes qu'un seul contrôle à une wxFrame (hors barre de menu et/ou barre d'état), ce dernier occupera toute la zone cliente.

    Pour palier à cela, tu peux affecter un sizer à la wxFrame et ajouter ton contrôle à ce sizer, ou alors, créer un wxPanel intermédiaire (qui occupera toute la zoen cliente de la frame) et créer ton bouton comme enafnt de ce panel.

    @+
    Xav'

  3. #3
    Invité de passage
    Inscrit en
    août 2009
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : août 2009
    Messages : 20
    Points : 1
    Points
    1

    Par défaut

    bonjour et merci pour ta réponse
    cependant j'avais ajouté un wxbosizer mais ça ne changeait rien
    donc je comprends pas pourquoi
    merci

  4. #4
    Membre confirmé Avatar de wxXav
    Homme Profil pro
    Développeur amateur
    Inscrit en
    décembre 2008
    Messages
    163
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur amateur

    Informations forums :
    Inscription : décembre 2008
    Messages : 163
    Points : 271
    Points
    271

    Par défaut

    Si tu as le même problème avec un wxBoxSizer, c'est que les paramètres d'ajout du bouton dans ce sizer en sont pas corrects.

    Poste un bout de code, qu'on voie ce qu'il en est.

    @+
    Xav'

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