【问题标题】:How to create DropShadow effect in QML with Qt6?如何使用 Qt6 在 QML 中创建 DropShadow 效果?
【发布时间】:2021-05-14 15:03:57
【问题描述】:

Qt5 中,使用 DropShadow 很容易。
但在 Qt6 中,模块 QtGraphicalEffects is removed.

Qt6 中是否有任何技巧、解决方法或新方法可以在某些组件周围创建投影?

【问题讨论】:

  • 嗯,这绝对不容易,但你仍然可以在 Qt6 中编写自己的ShaderEffects。我很确定 QtGraphicalEffects 会在以后的版本中回来,但现在你必须自己做。
  • 或者你可以用半透明的图片来做。
  • 是的,看起来就是这样。如果可行,我会尝试您的建议并将其添加为答案。谢谢
  • @user123445151156 如果您成功创建阴影,您能否发布 ShaderEffects 的示例用法?

标签: qt qml shadow qt6


【解决方案1】:

Qt6 DropShadow

import Qt5Compat.GraphicalEffects
DropShadow {} 

【讨论】:

  • innershadow有什么建议吗?
【解决方案2】:

正如您自己注意到的,Qt Graphical Effectsremoved (definitely)

以下模块已删除,不打算开发 进一步。

  • Qt 图形效果
  • [...]

但是,Qt Graphical Effects 与 Qt6 使用的新 QRhi(Qt 渲染硬件接口)兼容。 [1]

请注意,这并不意味着它将在稍后阶段包含在 Qt 6 中。 [2]

尽管如此,我希望在 git 的 dev 或 Qt 5.15 分支中使用 DropShadow 会相对容易。

请注意,它将作为Qt5 Compatibility API 包含在Qt6.1 中。 (Qt 6.1 的最终发布原计划于 27.04.2021 [3]

【讨论】:

    猜你喜欢
    • 2021-12-12
    • 2021-11-24
    • 2022-07-25
    • 2020-09-18
    • 2022-01-17
    • 2013-07-16
    • 1970-01-01
    • 2021-07-17
    • 1970-01-01
    相关资源
    最近更新 更多