class Simple:public wxFrame
{
public:
? ? Simple(const wxString& title);
protected:
? ? void Slider_OnScroll(wxScrollEvent& event);
? ? void SpinCtrc_Change(wxSpinEvent& event);
? ? wxSlider* slider;
? ? wxSpinCtrl* scValue;
};
Simple::Simple(const wxString& title)
? ? :wxFrame(NULL,-1,title)
{
? ? slider = new wxSlider(this,-1,0,0,100,wxDefaultPosition,wxDefaultSize
? ? ? ? ? ? ? ? ? ? ? ? ,wxSL_HORIZONTAL//水平显示;垂直显示使用wxSL_VERTICAL
? ? ? ? ? ? ? ? ? ? ? ? |wxSL_LABELS//显示标签
? ? ? ? ? ? ? ? ? ? ? ? |wxSL_AUTOTICKS//显示刻度线
? ? ? ? ? ? ? ? ? ? ? ? |wxSL_TOP//顶部显示刻度
? ? ? ? ? ? ? ? ? ? ? ? |wxSL_INVERSE//反转刻度
? ? ? ? ? ? ? ? ? ? ? ? ? );
? ? slider->Bind(wxEVT_COMMAND_SLIDER_UPDATED,wxScrollEventHandler(Simple::Slider_OnScroll),this);
? ? slider->SetValue(50);
? ? scValue = new wxSpinCtrl(this,-1
? ? ? ? ? ? ? ? ? ? ? ? ,""
? ? ? ? ? ? ? ? ? ? ? ? ,wxPoint(-1,-1),wxSize(-1,-1)
? ? ? ? ? ? ? ? ? ? ? ? ,wxALIGN_RIGHT
? ? ? ? ? ? ? ? ? ? ? ? ,slider->GetMin()
? ? ? ? ? ? ? ? ? ? ? ? ,slider->GetMax()
? ? ? ? ? ? ? ? ? ? ? ? ,slider->GetValue()
? ? ? ? ? ? ? ? ? ? ? ? );
? ? scValue->Bind(wxEVT_COMMAND_SPINCTRL_UPDATED,wxSpinEventHandler(Simple::SpinCtrc_Change),this);
? ? wxBoxSizer* szMain = new wxBoxSizer(wxVERTICAL);
? ? szMain->Add(scValue,0,wxEXPAND|wxALL,10);
? ? szMain->Add(slider,0,wxEXPAND|wxALL,10);
? ? SetSizer(szMain);
? ? Centre();
}
void Simple::Slider_OnScroll(wxScrollEvent& event)
{
? ? scValue->SetValue(slider->GetValue());
}
void Simple::SpinCtrc_Change(wxSpinEvent& event)
{
? ? slider->SetValue(scValue->GetValue());
}