Я вызываю диалог из древовидного меню управления, как показано ниже.После этого следует функция OnSavePattern
.
if(itemId==A1)
{
A2Dlg A3(this, wxID_ANY);
if(A3.ShowModal()==wxID_OK)
{
A3.OnSavePattern();
wxGetApp().getPattern()->var1=1;
}
}
//////////////////////////////////////////
void A2Dlg::OnSavePattern()
{
if(radioButtonYM->GetValue())
wxGetApp().getPattern()->var2=1;
else if(radioButtonY->GetValue())
wxGetApp().getPattern()->var2=2;
else if(radioButtonM->GetValue())
wxGetApp().getPattern()->var2=3;
Refresh();
}
Однако иногда код не вызывает OnSavePattern
при нажатии Ok.Я не уверен, почему это происходит, а также я не создаю другой экземпляр A2Dlg.Любая помощь будет отличной.Пожалуйста, дайте мне знать, если требуется более подробное объяснение проблемы.