【问题标题】:Linear Gradient along x-axis not working. QML Qt 5.7沿 x 轴的线性渐变不起作用。 QML Qt 5.7
【发布时间】:2016-10-14 08:31:53
【问题描述】:

我需要在我的项目中沿 x 轴应用线性渐变。但这似乎不起作用。即使使用最简单的代码,即立即来自线性渐变的 Qt 文档,它也不会显示预期的输出。

这是我的代码。

ApplicationWindow {
visible: true
width: 640
height: 480
title: qsTr("Hello World")
Item {
      width: 300
      height: 300

      LinearGradient {
          anchors.fill: parent

          end: Qt.point(300, 0)
          start: Qt.point(0, 0)

          gradient: Gradient {
              GradientStop { position: 0.0; color: "white" }
              GradientStop { position: 1.0; color: "black" }
          }
      }
}}

我的代码产生这个输出。

任何人都知道发生了什么。请帮忙。提前致谢。

【问题讨论】:

  • 确保 QtCreator 构建了您的代码,并且没有决定 - 无论出于何种原因 - 不需要做任何事情。对我来说,代码完美运行。 (检查编译器输出)
  • 问题可能出在 GPU 上吗?我没有高GPU。但是 QtGraphicalEffects 中的所有其他示例都可以正常工作。
  • 编译器输出没问题。没有错误没有警告。而且我确定我没有运行任何其他代码。

标签: qt qml gradient linear-gradients qt5.7


【解决方案1】:

这很奇怪,我使用的是 2.5 版本,而且我有正确的输出... 无论如何,您仍然可以垂直定义渐变并应用旋转

end: Qt.point(0, 300)
start: Qt.point(0, 0)
rotation: -90

【讨论】:

  • 如果这样做,我认为建议不要使用 QtGraphicalEffects 中的 LinearGradient,而是使用 QtQuick 中的内置 Gradient。据我所知,QtGraphicalEffects 并不是性能最高的东西。
  • 问题可能出在 GPU 上吗?我没有高GPU。但是 QtGraphicalEffects 中的所有其他示例都可以正常工作。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-06-05
  • 1970-01-01
  • 2020-05-30
  • 1970-01-01
  • 1970-01-01
  • 2016-10-24
  • 1970-01-01
相关资源
最近更新 更多