12345678910111213141516171819202122232425262728293031323334353637383940 |
- #include "custommessagebox.h"
- CustomMessageBox::CustomMessageBox(QWidget *parent) : QMessageBox(parent) {}
- bool CustomMessageBox::showConfirmDialog(const QString &title, const QString &text, const QString &yesButtonText,
- const QString &noButtonText, QWidget *parent) {
- QMessageBox msgBox(parent);
- msgBox.setWindowTitle(title);
- msgBox.setText(text);
- QPushButton *yesButton = msgBox.addButton(yesButtonText, QMessageBox::YesRole);
- QPushButton *noButton = msgBox.addButton(noButtonText, QMessageBox::NoRole);
- // 设置按钮样式
- yesButton->setStyleSheet(
- "QPushButton { background-color:rgb(5, 58, 156); color: white; padding: 5px 15px; "
- "border-radius: 4px; }");
- noButton->setStyleSheet(
- "QPushButton { background-color: #f44336; color: white; padding: 5px 15px; "
- "border-radius: 4px; }");
- msgBox.exec();
- // 返回true表示用户选择了确定/继续,false表示取消
- return msgBox.clickedButton() == yesButton;
- }
- bool CustomMessageBox::showTimeoutDialog(const QString &title, const QString &text, const QString &continueButtonText,
- const QString &cancelButtonText, QWidget *parent) {
- return showConfirmDialog(title, text, continueButtonText, cancelButtonText, parent);
- }
- void CustomMessageBox::setupButtonStyles(QPushButton *yesButton, QPushButton *noButton) {
- yesButton->setStyleSheet(
- "QPushButton { background-color:rgb(5, 58, 156); color: white; padding: 5px 15px; "
- "border-radius: 4px; }");
- noButton->setStyleSheet(
- "QPushButton { background-color: #f44336; color: white; padding: 5px 15px; "
- "border-radius: 4px; }");
- }
|