我試圖讓我們的彈出消息框有更適當的文本,而不是通用的「確定」,「取消」等。但是,我沒有看到一個簡單的方法來獲得按鈕上的標準圖標。QMessageBox addButton()使用標準圖標/顯示
例如,通常QMessageBox::Save
按鈕帶有一個圖標。相反,我希望文本是「保存部分」,但由於這仍然是一個保存操作,所以擁有相同的圖標會更好。
我很樂意將此與角色綁定,因爲我所有的自定義測試按鈕都映射到其中一個標準角色。有沒有簡單的方法將標準圖標放到自定義按鈕上?
我試圖讓我們的彈出消息框有更適當的文本,而不是通用的「確定」,「取消」等。但是,我沒有看到一個簡單的方法來獲得按鈕上的標準圖標。QMessageBox addButton()使用標準圖標/顯示
例如,通常QMessageBox::Save
按鈕帶有一個圖標。相反,我希望文本是「保存部分」,但由於這仍然是一個保存操作,所以擁有相同的圖標會更好。
我很樂意將此與角色綁定,因爲我所有的自定義測試按鈕都映射到其中一個標準角色。有沒有簡單的方法將標準圖標放到自定義按鈕上?
將一個帶有QMessageBox::addButton的按鈕添加到QMessageBox,然後用您想要的QStyle::standardIcon返回的圖標調用按鈕的setIcon。
如果你只是想改變對StandardButton
文本,但保持標準的圖標,你可以做到以下幾點:
QMessageBox *box = new QMessageBox("title", "text", QMessageBox::NoIcon, QMessageBox::Save, QMessageBox::Close, QMessageBox::Open);
box->button(QMessageBox::Save)->setText("Save part");
box->show();
這將導致如下:
而且按鈕將保持相同的作用