2012-02-08 11 views
0

ドックウィジェットをいくつか持っているQtデザイナーを使ってフォームを作ったので、これらのドックウィジェットには子供ウィジェットがいくつかあります。私はmainwindow.cpp内のドックウィジェットとこれらの子ウィジェットにどのようにアクセスできますか?Qtデザイナーのドックウィジェットの子供のアクセス

答えて

5

I非常に物事のこれらの種類のドキュメントを読むことをお勧めします、しかし、あなたは少し頭のスタートを与えるために、QDockWidgetはQObjectをから継承QWidgetの、から継承:

https://doc.qt.io/qt-4.8/qobject.html#children

widget->子供()単にこのウィジェットの子供たちに伝えます。これは、直接アクセスするオブジェクトの名前をまだ知っていないか、またはそれらへの参照がない場合に必要になります。

更新あなたがたQt Designerでオブジェクトを作成し、あなたがあなたのために生成されるsetupUiは(この)、あなたのメインウィンドウの内側に、あなたは、あなたが持っていたウィジェットのすべてにアクセスできるようになります実行

メンバーとして設立Qt Designerで名前を付けられたとおりに直接アクセスできます。 Qtを使い始める際のチュートリアルのひとつをチェックしてください。 http://sector.ynet.sk/qt4-tutorial/my-first-qt-gui-application.html

+0

docwidget自体にアクセスし、その子にアクセスする方法について質問しています。 –

+2

@Menopia - 私はあなたがdocsやqtのエントリーレベルの情報を読んでいないことのために投票してもらえません。 – jdi

+0

彼はあなたの人が普通にやっているようなことについては何も言わなかった。彼はあなたに短い答えとよく書かれた書類をたくさん与えました。 – chikuba

2

あなたはまた、

QList<QDockWidget *> dockWidgets = findChildren<QDockWidget *>();

でメインウィンドウからすべてのdockWidgetsのリストを取得することができます:ここでは、どのようにあなたのUIファイルを利用して、そこからメンバーにアクセスすることを示したものです同じようなテクニックがツールバーなどを取得するために機能するので、リストを手動で作成する必要はありません。

関連する問題