如何在消息框中显示图像.我试过了
about.setIcon(":/pics/goku3.jpg");
Run Code Online (Sandbox Code Playgroud)
但它给了我错误.我知道我可以使用内置的盒子.这是显示此框的完整代码.
void MainWindow::on_actionUmer_s_Program_triggered()
{
QMessageBox about;
about.setText("Umer's Program");
about.setInformativeText("Copyright ; 2012 Umer Software Inc.\nI wrote this program for fun.\n);
about.setStandardButtons(QMessageBox::Ok);
about.setIcon(":/pics/goku3.jpg"); // here is the error
about.setDefaultButton(QMessageBox::Ok);
about.show();
about.exec();
}
Run Code Online (Sandbox Code Playgroud)
还请告诉我如何设置该图像的大小.
小智 8
您不应该使用,about.setIcon(":/pics/goku3.jpg");
因为该QMessageBox::setIcon(Icon)
方法仅适用于预定义的图标
QMessageBox::NoIcon
QMessageBox::Question
QMessageBox::Information
QMessageBox::Warning
QMessageBox::Critical
Run Code Online (Sandbox Code Playgroud)
要加载自己的图片,您应该使用:
void setIconPixmap ( const QPixmap & pixmap )
Run Code Online (Sandbox Code Playgroud)
例如:
about.setIconPixmap(QPixMap(":/pics/goku3.jpg"));
Run Code Online (Sandbox Code Playgroud)
此外,如果要使用此格式,请":/pics/goku3.jpg"
确保.qrc
正确配置了您的文件(这是资源文件).
您可以从这里获得更多信息.
归档时间: |
|
查看次数: |
8975 次 |
最近记录: |