スレッドからメインウィンドウの QtreeView にイベントを投稿する必要があります。イベントを送信するには、Qobject (つまり、メイン ウィンドウ内の qtreeview) へのポインターが必要です。
このために、コンストラクター MainWindow::MainWindow() でメインウィンドウへのポインターを取得する必要があります。
sharedobj.h ファイルには、mainwindow へのポインタが含まれています :----
#include "ui_mainwindow.h"
/*!
Shared object among threads.
*/
class cntrlObj
{
public:
cntrlObj();
~ctrlObj();
/// Thread run control
bool m_bQuit;
/*!
Pointer to mainwindow window
*/
Ui::MainWindow *ui;
}
Mainwindow クラスには次のオブジェクトが含まれます:---
cntrlObj cntrlObj_obj;
メインウィンドウのコンストラクター:-----
/*!
Take Pointer to Mainwindow session window
*/
cntrlObj_obj->ui_ptr->setupUi(this);
Mainwindow へのポインタを取得するのは正しい方法ですか?
また、「sharedobj.h」ファイルで行ったように、mainwindow の名前空間 UI にアクセスしてポインターを宣言するために、別の sharedobj.h ファイル内にファイル「ui_mainwindow.h」を含めることはできますか?