我正在尝试让我们的弹出消息框有更合适的文本,而不是通用的“确定”,“取消”等等。但是,我没有看到一种简单的方法来获取按钮上的标准图标
例如,通常QMessageBox::Save
按钮带有一个图标。相反,我希望文本是“保存部分”,但由于这仍然是一个保存操作,所以拥有相同的图标会很好。
我很乐意将此与角色绑定,因为我的所有自定义测试按钮都映射到其中一个标准角色。有没有简单的方法将标准图标放到自定义按钮上?
答案 0 :(得分:4)
如果您只想更改StandardButton
上的文字但保留标准图标,则可以执行以下操作:
QMessageBox *box = new QMessageBox("title", "text", QMessageBox::NoIcon, QMessageBox::Save, QMessageBox::Close, QMessageBox::Open);
box->button(QMessageBox::Save)->setText("Save part");
box->show();
这将产生以下结果:
按钮将保持相同的角色
答案 1 :(得分:1)
向QMessageBox添加一个带有QMessageBox::addButton的按钮,然后使用您想要的setIcon返回的图标调用Button的QStyle::standardIcon 。