0

我不是专家,但我已经使用 Qt/QtEmbedded 一段时间了,用于 SBC 6845。我创建了一些应用程序并已在我的设备上成功运行它们。现在我希望所有这些应用程序都出现在主屏幕上。我知道使用 QML/Qt Quick 这可能会实现,但我不知道如何继续它。我浏览了一些链接和教程,但其中大多数都展示了如何使用 Qt Quick 创建按钮以及所有这些,但仅此而已。我还没有找到一些教程/文档,可以指导我如何在我的主屏幕上继续使用所有应用程序。我需要一些方向,任何链接,关于文档/书籍的建议都是受欢迎的。

[在为我的 SBC 交叉编译 QtEmbedded 4.6.2 库时,我遇到了启用 opengl 支持的问题。而且,我不知道在没有 opengl 的情况下使用 QtQuick2 的其他方法。

应用程序(其中 5-6 个)是 QWidget,链接图标需要保留在主屏幕中。我想让它们尽可能简单,而不会对图标产生任何影响。

简而言之,我正在尝试创建一堆显示在主屏幕上的图标,这些图标链接到这些应用程序。如果在 Windows 风格的应用程序中启动应用程序,(或像弹出 QDialog)也将服务于我的目的。] 谢谢。

4

1 回答 1

0
  • “我浏览了一些链接和教程,但其中大多数都展示了如何使用 Qt Quick 创建按钮和所有这些,但仅此而已”

    对于这部分问题,我建议您下载 QtCreator 并开始玩演示(使用的不仅仅是一些按钮:您有 ListViews、GridViews、Delegates、Animations、Particles、QtQuick Layouts 的演示(仅限 Qt5.1 )、QtQuick 控件(仅限 Qt5.1)。

    还有相当完整的:http: //qt.gitorious.org/qt-labs/qt5-everywhere-demo

  • 我完全不熟悉您问题的所有嵌入式/交叉编译方面。

  • 关于 OpenGL/QtQuick2:http ://qt-project.org/forums/viewthread/30483 http://qt-project.org/forums/viewthread/17201

    另请注意,您可以将 QtQuick2 场景嵌入到 QWidget 中,但不能反过来(场景图中没有 QtWidget)。


因此,也许最简单/最快的方法是坚持使用 Qt4 或 Qt5 声明性/QtQuick1 模块(从 Qt 5.2 开始可能已弃用/删除)。在此设置中,没有场景图/强制需要 OpenGL。您可以通过 QGraphicsProxyWidget 将 QWidgets 嵌入到您的 qml 场景中(没有场景图:它使用 QGraphicsView 后端)。

然后,您将拥有一些 GridView(您也可以使用一些带有中继器的 Grid),其中填充了模型和委托(= 委托充当要填充模型的模板项)。

您的代表将具有状态/可能是 Loader(s)(用于按需加载):图标状态和单击时,一些包含加载程序的最大化状态,通过 QGraphicsProxyWidget 加载您的小部件。

你已经在这个例子中展示了一半(一个网格 + 2 个状态:小图标网格和最大化视图,你只需要实现委托/加载/模型/QGraphicsProxyWidget 的东西):http: //developer.nokia.com/社区/Wiki/Implementing_parent_change_animation_with_QML

于 2013-08-02T13:22:52.897 回答