gpt4 book ai didi

c++ - 在 Qt5 中从 C++ 操作 QML Canvas

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:39:04 25 4
gpt4 key购买 nike

在我的 Qt5 应用程序中,我有一些 C++ 和一些 QML 协同工作(也就是来回发送信号)。

在这一点上,我想实现一个小部件,以我的 QML 中显示的实际波形的形式显示播放音频流的实时更新可视化。所以我想知道有哪些替代方法可以解决这个问题?最简单的代码替代方案是什么?哪种替代方案的性能最好?

我天真的想法是:

  • 在我的 QML 中创建一个 Canvas ,然后直接从 C++ 绘制到这个 Canvas
  • 将实际样本作为缓冲区发送到 QML,并通过 js 在 canvas 中绘制它们
  • 将实际样本作为缓冲区发送到 QML 并以其他方式绘制它们
  • 编写自定义 C++ 小部件并以某种方式在 QML 中显示它

PS:我已经可以访问实际样本来生成可视化效果,但是如果您对此也有巧妙的解决方案,那么我会非常高兴!

谢谢

最佳答案

你可以继承QQuickItem .此外,还有一个子类,QQuickPaintedItem允许您使用 QPainter 进行绘图。

这里有一个 example of QQuickPaintedItem用法

关于c++ - 在 Qt5 中从 C++ 操作 QML Canvas,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28206352/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com