如何替换QML(QT)文件上的图像中的图像中没有资源中的图像
How to replace an image on QML (Qt) file by an other image do not have in Resource
我有一个qml文件,在其中按钮上设计了一个图像。
菜单.qml
(...)
ToolButton {
Image {
(...)
Image {
id: img1
source: "qrc:/Images/img_1.png"
}
}
}
现在我想要,如果我在文件夹中有一张图片c:/images/,例如 c:/pic/img_2.png ,加载成功菜单>菜单>菜单> qml ,它会自动替换img_2.png(不在资源中(的img_1.png(在资源中(。
有人可以帮我吗?
(对不起,我的英语不好(
Image
允许用户使用JavaScript代码在运行时更改图像源。因此,每当您想更改图像时,都可以将新的源URL分配给img1.source
。
image.source = 'file:/c:/Pic/img_2.png';
请注意,对于本地文件,您应该使用file:
协议方案。
如果我理解了您的问题,则可以通过附加到信号Component.onCompleted
(...)
ToolButton {
Image {
(...)
Image {
id: img1
source: "qrc:/Images/img_1.png"
Component.onCompleted: {
source = "file://C:/Pic/img_2.png"
}
}
}
}
使用QT Resource System管理资源文件
... QML中相对路径指定的所有文件将从资源系统中加载。资源系统的使用与QML层完全透明。这意味着所有QML代码均应使用相对路径参考资源文件,并且不应使用QRC方案。该方案仅应从C 代码中用于参考资源文件。
因此,加载图像外部资源文件所需要做的就是使用其绝对路径。
相关文章:
- 具有瞬态资源的RAII类
- C++,OpenCV,尝试显示图像时"OpenCV(4.3.0) Error: Assertion failed (size.width>0 && size.height>0)"此错误
- QML:设置动画图像源,而不加载资源中的文件
- 如何替换QML(QT)文件上的图像中的图像中没有资源中的图像
- MFC-无法从资源输出BMP图像
- 让主程序知道资源在哪里(图像、数据等)
- 使用 CMake 将资源(例如着色器代码、图像)嵌入到可执行文件/库中
- 从 WinAPI C 项目中的专用 DLL 加载图像资源
- 如果我在Visual Studio项目中将图像作为资源包含在内,这些图像是否会编译到可执行文件中
- 无法加载Qt5/cmake项目中Qt资源文件中指定的图像
- QImage,可以更改资源图像的背景(png/jpg)
- Gdiplus::图标资源中的图像
- 从资源加载图像失败
- 如何从资源中的图像数组中获得一个图像的HBITMAP
- QT资源文件-图像不显示时运行
- 从visual studio IDE运行时,项目无法加载图像资源
- c++位图资源(RT_BITMAP)和PNG图像格式
- 将mat从DLL c++传递到图像资源c#
- 从资源加载图像不起作用(C++ Dll)
- 在代码中嵌入图像,而不使用资源节或外部图像