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 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76
|
#include <wx/wx.h>
class MainApp:public wxApp
{
public:
virtual bool OnInit();
};
class MainWindow:public wxDialog
{
public:
MainWindow(const wxString &title,const wxPoint &pos,const wxSize &size);
DECLARE_EVENT_TABLE();
void OnQuit(wxCloseEvent &event);
void OnClick(wxCommandEvent &event);
enum
{
ID_CLICK,
ID_CHAMP_SAISIE
};
};
IMPLEMENT_APP(MainApp)
BEGIN_EVENT_TABLE(MainWindow,wxDialog)
EVT_BUTTON(ID_CLICK,MainWindow::OnClick)
EVT_CLOSE(MainWindow::OnQuit)
END_EVENT_TABLE()
bool MainApp::OnInit()
{
MainWindow *win=new MainWindow("boite a dialogue",wxPoint(250,300),wxSize(350,250));
win->Show(true);
SetTopWindow(win);
return true;
}
MainWindow::MainWindow(const wxString &title,const wxPoint &pos,const wxSize &size)
:wxDialog((wxDialog *)NULL,-1,title,pos,size,wxDEFAULT_DIALOG_STYLE|wxRESIZE_BORDER|wxTHICK_FRAME)
{
//etape 1
wxTextCtrl *champ=new wxTextCtrl(this,-1,"Entrer du texte ici");
wxBoxSizer *cadrepcp=new wxBoxSizer(wxVERTICAL);
wxFlexGridSizer *cadreflex=new wxFlexGridSizer(1,2,10,10);
cadreflex->Add(new wxStaticText(this,-1,"Champ de saisie de texte : "),1);
cadreflex->Add(champ,ID_CHAMP_SAISIE,1);
cadrepcp->Add(cadreflex,0,wxALIGN_CENTER|wxGROW|wxALL,25);
wxString saisie=champ->GetValue();
//etape 2
wxStaticText *statext=new wxStaticText(this,0,saisie);
wxStaticBox *statbx=new wxStaticBox(this,0,"Résultat");
wxBoxSizer *cadrestatic=new wxStaticBoxSizer(statbx,wxHORIZONTAL);
cadrestatic->Add(statext,0,wxALIGN_CENTER|wxGROW|wxALL,25);
cadrepcp->Add(cadrestatic,0,wxALIGN_CENTER);
//etape 3
wxBoxSizer *clicksizer=new wxBoxSizer(wxHORIZONTAL);
wxButton *clickme=new wxButton(this,ID_CLICK,"Rafraichir");
clicksizer->Add(clickme,0,wxALIGN_CENTER|wxGROW|wxALL,25);
cadrepcp->Add(clicksizer,0,wxALIGN_CENTER);
SetSizer(cadrepcp);
SetAutoLayout(true);
Layout();
}
void MainWindow::OnClick(wxCommandEvent &event)
{
this->Refresh();
}
void MainWindow::OnQuit(wxCloseEvent &event)
{
this->Destroy();
} |
Partager