wxWidgets - Problem beim Layout



  • Hiho,

    ich hab ein prob mit meinem layout..
    erstmal code:

    wxBoxSizer *VertSizer = new wxBoxSizer(wxVERTICAL);
        wxBoxSizer *HorizSizer= new wxBoxSizer(wxHORIZONTAL);
    
    m_pHostLbl = new wxStaticText(this, LABEL_Host, _T("Host"), wxDefaultPosition, wxDefaultSize, 0, _T("Host") );
        HorizSizer->Add(m_pHostLbl, 0, wxALIGN_LEFT);
        m_pHostTxt = new wxTextCtrl(this, TEXT_Host, _T("Host"), wxDefaultPosition, wxSize(325,20), 0);
        HorizSizer->Add(m_pHostTxt, 1, wxALIGN_RIGHT | wxALL, 5);
    
        VertSizer->Add(HorizSizer);
        HorizSizer= new wxBoxSizer(wxHORIZONTAL);
    
        m_pDatabaseLbl = new wxStaticText(this, LABEL_Database, _T("Database"), wxDefaultPosition, wxDefaultSize, 0, _T("Database") );
        HorizSizer->Add(m_pHostLbl, 0, wxALIGN_LEFT);
        m_pDatabaseTxt = new wxTextCtrl(this, TEXT_Database, _T("Database"), wxDefaultPosition, wxSize(325,20), 0);
        HorizSizer->Add(m_pDatabaseTxt, 0, wxEXPAND | wxALL, 3);
    
        VertSizer->Add(HorizSizer);
        HorizSizer= new wxBoxSizer(wxHORIZONTAL);
    
        m_pUserLbl = new wxStaticText(this, LABEL_User, _T("User"), wxDefaultPosition, wxDefaultSize, 0, _T("User") );
        HorizSizer->Add(m_pHostLbl, 0, wxALIGN_LEFT);
        m_pUserTxt = new wxTextCtrl(this, TEXT_User, _T("User"), wxDefaultPosition, wxSize(325,20), 0);
        HorizSizer->Add(m_pUserTxt, 0, wxEXPAND | wxALL, 3);
    
        VertSizer->Add(HorizSizer);
        HorizSizer= new wxBoxSizer(wxHORIZONTAL);
    
        m_pPasswortLbl = new wxStaticText(this, LABEL_Passwort, _T("Passwort"), wxDefaultPosition, wxDefaultSize, 0, _T("Passwort") );
        HorizSizer->Add(m_pHostLbl, 0, wxALIGN_LEFT);
        m_pPasswortTxt = new wxTextCtrl(this, TEXT_Passwort, _T("Passwort"), wxDefaultPosition, wxSize(325,20), 0);
        HorizSizer->Add(m_pPasswortTxt, 0, wxEXPAND | wxALL, 3);
    
        VertSizer->Add(HorizSizer);
        HorizSizer= new wxBoxSizer(wxHORIZONTAL);
    
        m_pBtnOk = new wxButton( this, BUTTON_BtnOk, _T("OK") );
        HorizSizer->Add(m_pBtnOk, 0, wxALL, 10);
        m_pBtnCancel = new wxButton( this, BUTTON_BtnCancel, _T("Cancel"));
        HorizSizer->Add(m_pBtnCancel, 0, wxALL, 10);
    
        VertSizer->Add(HorizSizer);
        SetSizer(VertSizer);
        VertSizer->SetSizeHints(this);
    

    und zwar möchte ich, maybe schon hieraus zu erkennen, das es dann mal so aussieht:

    Host----Textfeld
    Data----Textfeld
    User----Textfeld
    PW------Textfeld
    ----OK-Abbrechen (Buttons)

    aber es ist so das er die Labels "Host" und "Passwort" tauschtund database und user gar nicht anzeigt und alles links zusammen quetscht ><
    (http://img204.imageshack.us/my.php?image=unbenanntyt8.jpg)

    hab keine ahnung woran das liegen könnte ;_;

    Help me out please, Thank you! ^^


  • Mod

    Hm, seh da so direkt nicht den Fehler.
    Evtl. versuchst du das mal in einem GUI Editor nachzubauen.

    Evtl. hilft ein Aufruf von Layout() oder Fit() nach SetSizer.



  • phlox81 schrieb:

    Evtl. hilft ein Aufruf von Layout() oder Fit() nach SetSizer.

    erstmal danke für die antwort, doch leider ändert sich damit nichts ><
    daran das es in einem extra Dialog ist kanns auch nicht liegen, oda?

    bin quasi noch noob in wxWidgets ><



  • okay.. mit nem GridSizer ging das dann jetzt <.<


Anmelden zum Antworten