QMessageBox()右上角关闭按钮(X)不可用

2022-04-24  本文已影响0人  AD_wang


QMessageBox::information(this, QString::fromLocal8Bit("提示"),

                    QString::fromLocal8Bit("用户名不存在!"),

                    QString::fromLocal8Bit("确定"),QString::fromLocal8Bit("取消"));

现象:当QMessageBox中自定义的按钮数量大于一个后,窗口关闭按钮不可用!

解决方法:添加一个默认按钮,并设置不可见

QMessageBox msg;

msg.setWindowTitle(QString::fromLocal8Bit("提示"));

msg.setText(QString::fromLocal8Bit("用户名不存在!"));

QPushButton *yestButton = msg.addButton(QString::fromLocal8Bit("确定"), QMessageBox::ActionRole);

QPushButton *noButton = msg.addButton(QString::fromLocal8Bit("取消"),QMessageBox::ActionRole);

msg.addButton(QMessageBox::No);

msg.button(QMessageBox::No)->setHidden(true);

缺点:写法不够简便,原本一个语句的代码,写成了一大堆,很难看。。。

思考:QMessageBox最多就三个按钮,当QMessageBox设置三个自定义按钮时,关闭按钮不可用,如何解决?

上一篇 下一篇

猜你喜欢

热点阅读