0

メインウィンドウで新しい cad ウィジェットを作成します。

glWidget = new MeshViewerWidget(this);

そして、私のテキストビューウィジェット:

tbl = new tableView( this );

私のメインウィンドウでは、次の方法でメッシュを取得できます。

glWidget->mesh();

tableview.cc で取得するにはどうすればよいですか? タイ

4

1 に答える 1

1

findChildrenの関数を使用しQObjectて、特定のタイプにキャストできるウィジェットのすべての子のリストを取得できます。例えば

QList<QTableView*> allTableViews = glWidget->findChildren<QTableView *>();
// Iterate in order to find the table view either by checking the name, the parent etc....

別のアプローチは、サイモンが提案するもので、トップレベルのウィジェットから到達可能にしたいメンバーにパブリックアクセス機能をサブクラス化して追加します。

于 2012-04-18T14:18:57.527 に答える