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设置三个自定义按钮时,关闭按钮不可用,如何解决?
网友评论