3

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

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

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

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

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

  3. 我必须使用 QML 来自定义小部件的其他选项(例如,在目标 C 中,我们使用子类化和绘制我们想要的任何东西或处理事件......)

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

4

2 回答 2

6
  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 之一)
于 2013-03-05T09:43:05.970 回答
2

您可以使用 QML 桌面组件轻松构建您的应用程序: https ://web.archive.org/web/20121203050945/http://blog.qt.digia.com/blog/2012/06/06/desktop-components- for-qt-5/

http://qt-project.org/wiki/Qt_Quick_Components

无论如何,我建议您使用 Qt 小部件和 Qt 样式表来装饰您的小部件:http: //qt-project.org/doc/qt-4.8/stylesheet-reference.html

于 2013-03-05T09:23:43.250 回答