c++ - 使用样式表不显示 QT 背景图像

标签 c++ qt background-image

我正在为 C++ 使用 QT,我设置了这个样式表代码:

QFrame {
    background-image: url(img.png);
}

图片不显示!它位于 QT 目录内的调试目录中。为什么不显示?

编辑:

甚至不能与资源系统一起工作

编辑 2:

它现在显示了,但前提是我使用 QWidget 而不是 QFrame。唯一的问题是当我调整窗口大小时图像会重复。我该如何让它正常拉伸(stretch)?

编辑 3:

好的,我现在只使用 border-image 并且它可以拉伸(stretch)。然而,它会出现故障(如果你移动得快一点,你可以遍历原始图像),而且非常慢(如果你没有足够慢地调整大小,它会断断续续,直到它设法拉伸(stretch)才会出现白色间隙)。我不能让它正常调整大小吗? =/

使用此样式表代码:

QWidget {
border-image: url(:/images/img.png);
}

编辑 4:

好吧,如果我已经知道了.. 图像中的可点击区域呢?这可能吗?

编辑 5:

来吧..有人吗?这很重要

最佳答案

将图像添加到应用程序的资源(.qrc 文件)中。 然后在样式表中引用它:

QFrame
{
 background-image: url(:/Style/img.png);
}

关于c++ - 使用样式表不显示 QT 背景图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5818970/

相关文章:

css - 我的背景图像未正确缩放。我已经将高度更改为 100%,等等

c++ - 使用-xipo -xO4构建时发生c++崩溃

c++ - 边界框视锥体剔除的问题

c++ - 将 QByteArray 反序列化为多个 QVariantMap

c++ - 更改不在 Qt 主线程上的监听端口

jquery - 修复主 div 和 float 菜单后面的循环图像背景?

html - 更改背景图像不透明度,而不影响最大高度、最大宽度

C++用 vector 序列化对象导致双重自由腐败

c++ - 使用签名数据按位解包

c++ - 在 Qt 5.7 C++ 中创建简单对象