bool Create(wxWindow *parent, const wxString& message, const wxString& caption,
const wxStringList& choices, char **clientData = NULL, long style = wxOK|wxCANCEL|wxCENTRE, const wxPoint& pos = wxDefaultPosition);
+ void SetSelection(int sel) ;
inline int GetSelection(void) const { return m_selection; }
inline wxString GetStringSelection(void) const { return m_stringSelection; }
inline char *GetSelectionClientData(void) const { return m_clientData; }
void MyFrame::SingleChoice(wxCommandEvent& event)
{
- const wxString choices[] = { "One", "Two", "Three", "Four", "Five" } ;
- int n = 5;
+ const wxString choices[] = { "One", "Two", "Three", "Four", "Five" } ;
+ int n = 5;
- wxSingleChoiceDialog dialog(this, "This is a small sample\nA single-choice convenience dialog",
- "Please select a value", n, (const wxString *)choices);
+ wxSingleChoiceDialog dialog(this, "This is a small sample\nA single-choice convenience dialog",
+ "Please select a value", n, (const wxString *)choices);
- if (dialog.ShowModal() == wxID_OK)
- {
- wxMessageDialog dialog2(this, dialog.GetStringSelection(), "Got string");
- dialog2.ShowModal();
- }
+ dialog.SetSelection(2);
+
+ if (dialog.ShowModal() == wxID_OK)
+ {
+ wxMessageDialog dialog2(this, dialog.GetStringSelection(), "Got string");
+ dialog2.ShowModal();
+ }
}
void MyFrame::FileOpen(wxCommandEvent& event)
wxListBox *listBox = new wxListBox(this, wxID_LISTBOX, wxPoint(-1, -1), wxSize(240, 160),
n, choices);
+ listBox->SetSelection(m_selection);
if ( clientData )
{
int i;
return TRUE;
}
+// Set the selection
+void wxSingleChoiceDialog::SetSelection(int sel)
+{
+ wxListBox *listBox = (wxListBox *)FindWindow(wxID_LISTBOX);
+ if (listBox)
+ {
+ listBox->SetSelection(sel);
+ }
+ m_selection = sel;
+}
+
void wxSingleChoiceDialog::OnOK(wxCommandEvent& WXUNUSED(event))
{
wxListBox *listBox = (wxListBox *)FindWindow(wxID_LISTBOX);