右クリックメニューを別色を付けて分かりやすく
拙作 Sengoku
こんなのを作ります。
作り込みが面倒なのであまり凝った造りにはしない人が多いのでは無いでしょか。
右クリックメニューを階層化して数を多く対応すればいいですからね。
MultiTabMenuWidgetクラス
マルチタブメニューと、 データ設定ダイアログの2つの機能を持たせます。
mainwindow.cpp// データ設定ダイアログを表示する
QDialog dlg;
// ダイアログを親Widgetとして生成
MultiTabMenuWidget *multiTabMenuWidget = new MultiTabMenuWidget(&dlg);
dlg.exec();
delete multiTabMenuWidget;
QDialog を親としてクラスを生成すると、 データ設定ダイアログを表示します。
QMain
mainwindow.cpp // この場合は、親なしで生成
MultiTabMenuWidget* multiTabMenuWidget = new MultiTabMenuWidget();
// prect 選択メニューを表示するのに、上側、下側等の判定に使う
QRect prect = this->frameGeometry();
// 選択メニューを表示
int colorno = multiTabMenuWidget->SelectClassName(prect);
// 選択しなかった場合は -1
if(colorno >= 0){
// ここで選択された番号を使って処理をします。
qDebug() << "colorno=" << colorno;
}
delete multiTabMenuWidget;
親無しで生成すると、 データ設定ダイアログ部品は生成されません。
データ読込だけします。
int colorno = multi
でメニューを表示します。
サンプルプログラムソース
説明が少ないですが、 ソースを見て動かしながら改造してください。
最終更新日
2023-05-15