Qt6のQPushButtonとデータを結びつけるには?

今回は例として、enumの値を代入します。 設定の例 enum class ActionType { Open, Save, Close }; QPushButton* btn = new QPushButton("Open"); // enum → int にして保存 btn->setProperty("action", static_cast<int>(ActionType::Open)); 取得の例 void MainWindow::onButtonClicked() { QPushButton* btn = qobject_cast<QPushButton*>(sender()); if (!btn) return; ActionType action = static_cast<ActionType>(btn->property("action").toInt()); switch (action) { case ActionType::Open: qDebug() << "Open"; break; case ActionType::Save: qDebug() << "Save"; break; case ActionType::Close: qDebug() << "Close"; break; } } シグナルの接続 connect(btn, &QPushButton::clicked, this, &MainWindow::onButtonClicked);

2026年1月13日