私は wxWidgets の初心者です。私の wxWidgets バージョン: wxWidgets-2.8.12、コードブロック: 12.11、minGW 内。
私のコードは次のとおりです。
item=new wxMenuItem(settings,id,wxT("showTip"),wxT(""),wxITEM_CHECK );
item->Check(true);
settings->Append(item);/* after Append to 'settings', item->IsChecked()==false. */
まず、menuItem を作成し、check-status を「true」に設定します。そして、メニューに追加します。そして奇妙なことが起こり、check-status が「false」に変更されます。どうしてか言ってくれない?
ちなみに、これはこの質問に対する私のテストコードです。
wxMenu *settings=new wxMenu;
wxMenuItem *item=new wxMenuItem(settings,menuID_MENU,wxT("test menu"),wxT("help message"),wxITEM_CHECK);
item->Check(true);
bool check_status=item->IsChecked();
settings->Append(item);
bool check_status_after=item->IsChecked();
if(check_status!=check_status_after)
wxLogMessage(wxT("not equal"));