gpt4 book ai didi

Qt 5 关于 QT/QML 和 Widget 自定义的一般问题

转载 作者:行者123 更新时间:2023-12-04 13:20:03 24 4
gpt4 key购买 nike

我是一名 iOS/Cocoa 开发人员,希望将我的一个应用程序移植到 PC 平台。我不在乎编写多平台代码并维护一个应用程序。我将继续使用 cocoa 和 cocoa touch 进​​行 iOS Mac 开发。我选择在 PC 上使用 QT 5,我不确定它是否明智的选择,但它很简单,我可以理解 c++。如果不是,请指出正确的方向。

我的应用程序并不复杂,但需要一些特殊的定制,例如看起来像 iOS 表格 View 的 ListView,使用带有 twitter 引导式搜索框的自定义圆形窗口,我想监视一些全局 OS 事件,如击键,以及用户当前正在使用的其他应用程序。我也使用 SQLite 和 AES 加密。

我的问题是关于 UI 定制的。

  1. 我应该开始学习并使用 QML 吗?我不确定它到底是什么,看起来非常简单的 CSS,但我感觉更多的是为嵌入式设备设计的并且有局限性......

  2. 如果我使用 QML,我是否可以使用 QT 的全部功能?

  3. 我还有哪些其他选项可以自定义小部件而不是使用 QML(例如,在 objective-c 中,我们使用子类化和绘制我们想要的任何内容或处理事件...)

  4. 我对windows平台没有经验。我应该使用 VisualStudio C++ 而不是 QT5 吗?随着所有权的变化,我感到有些不安全。

最佳答案

  1. 是的,您应该这样做。 QML 是声明性语言,允许在其中执行 javascript。你几乎可以做任何与 QML 相关的 UI。如果您没有某些特定的 UI 元素,您可以用纯 C++(Qt) 绘制它并在 QML 中使用它。所以QML是目前Qt开发的最佳选择。虽然它不像 CSS,但它更强大。
  2. 是的,您拥有 Qt 的所有功能以及声明性语言可能提供的额外功能 - 简化 UI 开发过程以及现代的 UI 和逻辑分解。
  3. 您可以在纯 C++ Qt 中使用此选项,您可以子类化小部件、重绘它们、更改行为等。这种方法不如 QML 方法。
  4. 这点没有意义。有些人将 Visual C++ 视为单独的语言,这是错误的。您可以将 Visual C++ 视为 C++ + MS 编译器的一些次要扩展。但是将其称为 GCC C++ 是很可笑的。因此,如果您使用免费提供的 Qt 集成插件,基本上您几乎可以轻松地将 Visual Studio 与 Qt 一起使用。或者你可以选择 Qt creator,有些人认为它优于 MSVS。选择什么取决于您,但我相信对于新手来说,将 Qt creator 与 Qt 一起使用要简单得多。但请注意,您将需要一些编译器,因为 Qt 创建者只是一个 IDE,它应该使用一些第 3 方编译器(MS 或 GNU 编译器)

关于Qt 5 关于 QT/QML 和 Widget 自定义的一般问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15211917/

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