Owe*_*wen 8 c++ user-interface qt stylesheet
我通过命令行使用参数-stylesheet运行我的Qt应用程序.控件的样式有效,但在我尝试为MainWindow加载背景图像时却没有.我试过了:
QMainWindow{
background-image:url(:image_256_8bit_latest_back.png);
}
Run Code Online (Sandbox Code Playgroud)
还尝试在后台删除":",但没有区别.有人能告诉我这个StyleSheet有什么问题吗?
Jér*_*ôme 17
您要使用的图像位于何处?
您是否将其作为应用程序的资源?
如果要使用属于资源的图像,则应*.qrc在项目中使用资源文件().此文件应包含以下内容:
<RCC>
<qresource prefix="/images">
<file alias="sunset.jpg">sunset.jpg</file>
</qresource>
</RCC>
Run Code Online (Sandbox Code Playgroud)
然后,您可以在以下构造函数中编写此代码QMainWindow:
setStyleSheet("background-image: url(:/images/sunset.jpg);");
Run Code Online (Sandbox Code Playgroud)
如果您不想使用Qt资源系统,只需将路径放在磁盘上即可:
setStyleSheet("background-image: url(res/images/sunset.jpg);");
Run Code Online (Sandbox Code Playgroud)
但是如果你使用相对路径,请小心:Qt将从当前位置开始,这可能会改变,特别是如果你正在使用Qt Creator进行开发.
使用Qt Creator,当您在调试模式下运行应用程序时,当前路径就在debug/.在发布模式下运行应用程序时,当前路径处于release/(除非您更改了设置).