【问题标题】:Maintaining Qt Application as Module and Library [closed]将 Qt 应用程序维护为模块和库 [关闭]
【发布时间】:2018-09-25 23:47:32
【问题描述】:

如何在单个应用程序中维护 500 qt ui 小部件表单。是否可以将表单应用程序分离为模块或库。如果可以的话,如何链接每个模块。是否可以为每个模块创建单独的文件夹。

【问题讨论】:

  • 我很难理解你到底在问什么。您想将 ui 小部件(及其代码)从您的主应用程序移动到库/其他项目吗?

标签: c++ qt qwidget


【解决方案1】:

如何在单个应用程序中维护 500 qt ui 小部件表单。

没关系。您甚至可以维护 100000 多个小部件表单。甚至可以在运行时使用代码或with .ui files 创建小部件。这取决于您的源文件夹结构、构建系统和您的意愿。

是否可以将表单应用程序分离为模块或库。

是的,是的。您可以将您的小部件存储到statically linked librarydynamic linked library,或任何您想要的。

如果可能,如何链接各个模块。

您可以在编译时链接(静态或动态库),或在运行时加载它们。要在编译时链接,只需使用您的构建系统来指定依赖项。要在运行时链接,您可以使用QLibrary

但是对于 Qt 应用程序,use Qt plugins 是一个很好的做法。这是分离模块中一个小部件的good example

是否可以为每个模块创建单独的文件夹。

是的,这是可能的。您需要将模块放入文件夹并使用相对路径加载它们。例如:QLibrary("./modules/mywidgets").load()

或者,如果您使用的是 Qt 插件,只需将add qt.conf file 添加到您的资源或应用程序文件夹即可。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-07-09
    • 1970-01-01
    • 2014-10-12
    • 1970-01-01
    • 2016-07-07
    相关资源
    最近更新 更多