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 :

Feeze de ma fenêtre wxWidgets


Sujet :

wxWidgets

  1. #1
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut Feeze de ma fenêtre wxWidgets
    Bonjours à tous,

    J'ai un méga gros soucis, c'est le drame :

    Alors j'ai un wxPanel qui dedant prend un wxStaticBoxSizer.
    Dans le staticBoxSizer, j'ai mis un flexGridSizer de deux lignes.

    Dans la première ligne se trouve un wxStaticBox avec trois bouttons radio.
    Dans la deuxième ligne se trouve un objet à moi dérivé de wxPanel.

    Dans cet objet à moi, lorsque je met juste un staticBoxSizer, l'application freeze dès que je touche à un boutton radio. Lorsqu'à la place je met un flexSizer, ça ne freeze pas... comprend rien.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    class monPanelSecondaire : public wxPanel
    {
       public:
          monPanelSecondaire(wxWindow* parent, wxWindowID id = wxID_ANY, wxPoint position = wxDefaultPosition, wxSizer size = wxDefaultSize, long style = 0, wxString name = "");
    };
     
    monPanelSecondaire::monPanelSecondaire(wxWindow* parent, wxWindowID id, wxPoint position, wxSize size, long style, const wxString name) : wxPanel(parent, wxID_ANY, position, size, style, name)
    {
         wxStaticBoxSizer* staticBoxSizer = new wxStaticBoxSizer(wxVERTICAL, this, "mon panel secondaire");
        SetSizer(staticBoxSizer);
    }
    Voilà pour le panneau que je vais insérer dans un autre

    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
     
    class monPanelPrincipal : public wxPanel
    {
       public:
          monPanelPrincipal (wxWindow* parent, wxWindowID id = wxID_ANY, wxPoint position = wxDefaultPosition, wxSizer size = wxDefaultSize, long style = 0, wxString name = "");
    };
     
    monPanelPrincipal::monPanelPrincipal(wxWindow* parent, wxWindowID id, wxPoint position, wxSize size, long style, const wxString name) : wxPanel(parent, wxID_ANY, position, size, style, name)
    {
        wxStaticBoxSizer* staticBoxSizer = new wxStaticBoxSizer(wxVERTICAL, this, "mon panel principal");
     
        wxBoxSizer* boxSizer = new wxBoxSizer(wxVERTICAL);
     
            wxRadioButton* b1 = new wxRadioButton(this, wxID_ANY, "bouton1");
            boxSizer->Add(b1);
            wxRadioButton* b1 = new wxRadioButton(this, wxID_ANY, "bouton1");
            boxSizer->Add(b2);
            wxRadioButton* b1 = new wxRadioButton(this, wxID_ANY, "bouton1");
            boxSizer->Add(b3);
     
        staticBoxSizer->Add(boxSizer);
     
        wxBoxSizer* boxSizer2 = new wxBoxSizer(wxVERTICAL);
     
            MonPanelSecondaire* panel2 = new MonPanelSecondaire(this);
            boxSizer2->Add(panel2);
     
        staticBoxSizer->Add(boxSizer2);
     
        SetSizer(staticBoxSizer);
    }
    Voilà, ça ressemble à ça.
    Et donc là dès que je touche à un des boutons radio, ça freeze je ne peux plus rien faire à part stopper le débogage dans visual studio.
    Et si dans monPanelSecondaire à la place de mettre un wxStaticBoxSizer je met un wxFlexGridSizer, ça passe niquel....

    Y'a des règles a suivres concernant les bouton radio et les static box?

    J'vais encore faire quelque tests.

    Merci

    A bientôt
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    J'ai remplacé les boutons radio par des cases à cocher, ça passe nikel...

    Il doit y avoir un truc à pas faire avec des StaticBox et des boutons radio...

    Je cherche...
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  3. #3
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Lorsque je met le wxStaticBox dans le panel principale et que je lui ajoute le panel secondaire ça passe, mais quand le wxStaticBox est dans le secondaire, ça déconne :s
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  4. #4
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    Alors,

    Lorsque je met le style des boutons à wxRB_SINGLE, ça ne freeze pas...

    Par contre, à moi d'implementer le fait que c'est un choix, et qu'on ne puisse pas sélectionner plurisuers boutons...

    Je continu à chercher une autre solution
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

  5. #5
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2004
    Messages
    1 824
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2004
    Messages : 1 824
    Points : 1 544
    Points
    1 544
    Par défaut
    wxRB_SINGLE In some circumstances, radio buttons that are not consecutive siblings trigger a hang bug in Windows (only). If this happens, add this style to mark the button as not belonging to a group, and implement the mutually-exclusive group behaviour yourself.

    .... Va pour faire un groupe manuel :'(
    "Heureusement qu'il y avait mon nez, sinon je l'aurais pris en pleine gueule" Walter Spanghero

Discussions similaires

  1. Ping dans une fenêtre wxWidget
    Par cotede2 dans le forum wxWidgets
    Réponses: 3
    Dernier message: 14/05/2007, 16h10
  2. wxWidget : menu système et fermeture de fenêtre
    Par Patriarch24 dans le forum wxWidgets
    Réponses: 1
    Dernier message: 06/04/2007, 16h15
  3. [wxWidgets] Fenêtre maximizée !
    Par ddaime dans le forum wxWidgets
    Réponses: 3
    Dernier message: 12/01/2007, 15h29
  4. Afficher un shell dans une fenêtre wxWidget
    Par BlueCat dans le forum wxWidgets
    Réponses: 3
    Dernier message: 05/09/2006, 22h38
  5. [wxWidgets] Pas de sous-fenêtres
    Par GLDavid dans le forum wxWidgets
    Réponses: 5
    Dernier message: 05/12/2005, 20h32

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