我正在尝试使我们的弹出消息框有更合适的文本,而不是通用的"Ok","Cancel“等。然而,我没有看到一个简单的方法来获得按钮上的标准图标。
例如,通常情况下,QMessageBox::Save按钮上有一个图标。相反,我希望文本是"Save Part",但由于这本质上仍然是一个保存操作,所以拥有相同的图标会很好。
我很乐意将其绑定到角色,因为我所有的自定义测试按钮都映射到一个标准角色。有什么简单的方法可以将标准图标添加到自定义按钮上吗?
发布于 2012-02-14 01:18:25
向QMessageBox添加一个带有QMessageBox::addButton的按钮,然后使用您想要的QStyle::standardIcon 返回的图标调用该按钮的setIcon。
发布于 2012-02-14 02:43:41
如果您只想更改StandardButton上的文本,但保留标准图标,则可以执行以下操作:
QMessageBox *box = new QMessageBox("title", "text", QMessageBox::NoIcon, QMessageBox::Save, QMessageBox::Close, QMessageBox::Open);
box->button(QMessageBox::Save)->setText("Save part");
box->show();这将导致以下结果:

并且按钮将保持相同的角色
https://stackoverflow.com/questions/9264357
复制相似问题