QMenu
カスタムメニューを作成するためにQtにレイアウトまたはウィジェットを追加する方法はありますか?
下の例 (左) は私が持っているもので、メニュー以外のウィジェットを追加して、右のモックアップに似たものを目指したいと考えています。で実行できない場合QMenu
、同様の結果を生成するためのガイドがどこかにありますか (おそらく、より標準的なウィジェットをコンテキスト メニューとして機能させることによって)?
QMenu
カスタムメニューを作成するためにQtにレイアウトまたはウィジェットを追加する方法はありますか?
下の例 (左) は私が持っているもので、メニュー以外のウィジェットを追加して、右のモックアップに似たものを目指したいと考えています。で実行できない場合QMenu
、同様の結果を生成するためのガイドがどこかにありますか (おそらく、より標準的なウィジェットをコンテキスト メニューとして機能させることによって)?
確かにあります!Qt では、aa があれば方法があります。
QMenu
おそらく、 member を使用して使用する独自のクラスを作成する必要がありますQListWidget
。
QLayout
次に、レイアウトを生成し、サイズの再計算のためにすべての正しい関数をオーバーロードする必要があります。
そして、このレイアウト ( と考えてください) を使用して、 aと a のQHBoxLayout
両方を並べて表示する必要があります。QMenu
QListWidget
それはあなたを正しい方向に向けるのに十分なはずです.
編集:
コメンターが指摘したように、2 つのQObject
ことを継承することはできないため、それに応じて回答を更新しました。
メニュー項目をカスタマイズするには、QWidgetAction
クラスを使用できます。しかし、ポップアップ ウィジェットのようにメニューをカスタマイズしたいとします。したがって、サブクラスQMenu
化して、必要に応じてメニューのレイアウトを改善することができます ( QMenu
is QWidget
)。あなたの質問は明確ではありません。