使用具有UI控制的所有状态的1个图像在QT / QML中创建UI

时间:2017-12-23 03:42:55

标签: image user-interface qml

我希望使用PNG图像创建一个新的QML控件。我通常会为每个状态使用1个图像(示例悬停,单击,禁用)。我注意到一些开发人员在1个图像中使用1个图像和控件的所有状态..就像这样......

enter image description here

我想学习如何使用这些图像,我认为通过修改独特设计的模板来创建不同的样式非常有用。

所以我的问题是如何使用图像并且一次只显示一个状态?

以下是要使用的示例图像。我想在QML中创建一个简单的子弹图像,它执行以下操作。

  1. 从未点击过show grey,
  2. Hovered显示黄色,
  3. 点击它显示橙色。
  4. 这是要使用的图像。

    enter image description here

    我无法弄清楚如何只使用每个州的部分图像。

    感谢。

1 个答案:

答案 0 :(得分:1)

您最好的选择可能就是使用QQuickImageProviderHere是一个展示如何对其进行子类化的示例。您也可以使用该页面上其他答案中提到的着色器来完成此操作。

如果您想要一种更简单的方法来实现每个州使用一张图片的原始工作流程,您应该查看Imagine style