5

私の主なアプリケーション オブジェクトは、、、 、およびその他のいくつかのコンポーネントQObjectをジャグリングするです。アプリはほとんどがトレイにあり、いくつかのオプション ダイアログなどがあります。QSystemTrayIconQDialogQWindow

QMetaObject::connectSlotsByName()ここで、これらのオブジェクトからの信号をメイン オブジェクトのスロットに接続するために使用したいと思います。それは 10 ~ 15 個なので、手で書くのは効率的、適切、専門的、現代的などとは思えません。

ただし、メイン オブジェクトが表示されないため、 myQObjectをベース オブジェクトの親として使用するQWidgetことも、オブジェクトを inherit に変更することもできません。QWidget

アイデア?

4

2 に答える 2

2

信号を手動でスロットに接続することはまったく問題ありません。Qt 自体がそれを行っており、ほとんどの Qt アプリケーションがそれを行っています。

connectSlotsByName残念ながら、 の親子の問題には使用できませんQWidgetが、本当に必要な場合は、すべてのメタデータが で利用できるので、任意のペア/セットのQMetaObjectように機能する関数を作成できます。connectSlotsByNameQObject

于 2009-10-18T21:23:33.913 に答える