【问题标题】:Using Qt to make an almost native Windows Application?使用 Qt 制作几乎原生的 Windows 应用程序?
【发布时间】:2009-11-07 01:37:41
【问题描述】:

我喜欢 Qt 是跨平台的,但我想制作一个可以调用某些 Windows 特定 .dll 的应用程序。有点像 Google Chrome 在 Windows Vista/7 上使用玻璃(我知道 Chrome 不是使用 Qt 框架编写的,只是认为这是一个很好的例子)。

如何在 Qt 中做到这一点?可行吗?

【问题讨论】:

    标签: c++ windows qt dll cross-platform


    【解决方案1】:

    是的,这没问题。你就去做吧! Qt 本身只是一个你调用的 DLL,它恰好在不同的平台上是相同的。只需链接到您喜欢的 DLL 并调用它们。

    如果你愿意,使用 Qt 制作一个仅限 Windows 的应用程序并没有错。

    【讨论】:

      【解决方案2】:

      只要你手头有相关的 Windows SDK 头文件,并且可以链接到相应的库,那么混合和匹配 Qt 和 Win32 代码是很容易的。我使用 Qt Creator 进行 C++ 开发,它与 MinGW 一起提供,包括所有最常见的 Win32 SDK 头文件和库。你甚至可以用合适的#ifdefs 包装你的代码的 Windows 特定部分,以防你为不同的平台构建,例如:

      #ifdef Q_OS_WIN
      
      #include <windows.h>
      
      void someWindowsSpecificFunc()
      {
        ...
      }
      
      #endif // Q_OS_WIN
      

      【讨论】:

        【解决方案3】:

        您当然可以直接从 Qt 代码中调用 WinAPI 函数,那么最好包含 qt_windows.h 而不是 windows.h。

        如果您只想将酷炫的 Windows 7 新功能添加到您的应用程序中,那么您最好使用专用的 Qt 插件。有一个叫Q7Goodies

        【讨论】:

          【解决方案4】:

          勇敢地继续编写您的 Win 专用应用程序。您可以使用所有您想要的 Windows DLL。从这个意义上说,Qt 没有限制。您仍将受益于那些漂亮的 Qt 布局组件和可定制的皮肤。在换肤方面,没有比 Qt 更好的框架了。您的用户会喜欢您提供给他们的所有可调整大小的对话框。

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2011-11-10
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2016-05-24
            相关资源
            最近更新 更多