【发布时间】:2016-12-31 18:29:31
【问题描述】:
我在我的 qml 程序中添加了一个 ComoboBox。 这在桌面(Ubuntu 和 Win7)上运行良好。一旦我在我的嵌入式 linux 机器(带有 yocto 的 Sabrelight)上部署我的程序,当我尝试从 ComboBox 打开项目列表时它就会崩溃。
有人遇到过类似的情况吗?知道为什么会这样吗?
【问题讨论】:
标签: qt qml qtquick2 qtquickcontrols eglfs
我在我的 qml 程序中添加了一个 ComoboBox。 这在桌面(Ubuntu 和 Win7)上运行良好。一旦我在我的嵌入式 linux 机器(带有 yocto 的 Sabrelight)上部署我的程序,当我尝试从 ComboBox 打开项目列表时它就会崩溃。
有人遇到过类似的情况吗?知道为什么会这样吗?
【问题讨论】:
标签: qt qml qtquick2 qtquickcontrols eglfs
这是因为 Qt Quick Controls 1 中的 ComboBox 为弹出窗口创建了一个顶级窗口。嵌入式 Linux 上的 EGLFS 不支持创建多个顶级窗口。
您可能想尝试使用 Qt 5.7 中引入的Qt Quick Controls 2。通过提供基于项目的弹出窗口和一个数量级的更好性能,它是嵌入式和移动友好的。
您可以阅读更多关于历史的信息here。特别是,this post 强调了 Qt Quick Controls 2 中的基本结构变化。
【讨论】: