カスタム Qt ウィジェットのコードで、それが現在 Qt デザイナーでインスタンス化されていることを知るにはどうすればよいですか?
使用事例:
QPushButton、QLabel などのいくつかの子ウィジェットを持つ複雑なカスタム ウィジェットを作成します。
アプリケーションロジックが必要とするため、ウィジェットが作成されると、これらのサブコンポーネントのほとんどは表示されませんが、デザイン時にフォームに配置すると表示されます。
設計時にスタイル シートを操作できるようにするため。現在、私が得るのは空であり、コンストラクターの結果にすぎません-最小ビュー(私の場合は実際には空です)。
私が探しているのは、次のようなことができることです
MyQWidget::(QWidget *parent)
{
....
if(isRunningInDesigner())
{
myChildWidget1->setVisible(true);
myChildWidget2->setVisible(true);
myChildWidget3->setVisible(true);
}
else
{
myChildWidget1->setVisible(false);
myChildWidget2->setVisible(false);
myChildWidget3->setVisible(false);
}
....
}
では、このbool isRunningInDesigner()には何を入れればよいでしょうか?