wxWidgets
を使用して進行状況バーを表示する必要があります。現在、私はこれをやっています:なぜ `OnWorkerEvent`が` wxProgressDialog`で使われていますか?
m_dlgProgress = new wxGenericProgressDialog(wxString("Heading"), wxString("Message"), max, this, wxPD_APP_MODAL | wxPD_AUTO_HIDE | wxPD_SMOOTH);
for (int i = 0; i <= max; i++)
{
cont = m_dlgProgressConfig->Update(i);
i += max/7;
wxMilliSleep(200);
}
callingSomeFunctionFromBackend();
//after this function is executed I am updating dialogue with its maximum value
cont = m_dlgProgressConfig->Update(max);
これは正しい方法ですか?スレッドを作成し、OnWorkerEventを使用して進行状況バーを更新するコードをいくつか見てきました。なぜ彼らはスレッドを作成するのですか?私がやったことは正しかったのですか、それともそれ以上問題を引き起こすのでしょうか?
はい、私はスレッドを作成します。スタック上で対話を作成する方法は? – alohamora
'new'を使用してヒープ上に作成するのではなく、' wxProgressDialog dlg( "Heading"、 "Message"、max) 'として作成してください。 –
これで私を助けてください:https://stackoverflow.com/questions/47894040/create-wxthread-to-call-backend-function-for-every-evt-treelist-item-expanded – alohamora