繁体   English   中英

如何使用来自 Qt 创建者版本 6 的 .ui.qml 文件

[英]How to use .ui.qml files from Qt creator version 6

最近几天,我在这里和那里阅读/观看了一些关于 qt quick 和 qml 的教程。 但是 qt 创建者的用户界面,它在每个教程中的新 qt 快速项目上生成的样板已经不同。 有这么多的混乱。

我想做一个简单的 Hello World Qt 快速项目,我从packt跟着这本书。 (和上次看到的时候有变化,但是还是不行)

我添加了一些 UI 文件,其中添加了 *.ui.qml 和 *form.qml 文件。 现在,如果我在设计中编辑.ui.qml,任何其他文件都不会反映任何更改,但是如果我在设计中打开其他文件,它会提示我改用.ui.qml 文件。 这些示例给出错误“未找到 Cmake 配置”。 我在 Arch/wayland 上使用 Qt6.2,通过安装程序下载。

它应该如何工作? 我已经阅读了这个答案,还有其他一些答案,但我仍然感到困惑。 您能否链接到适当的教程或简单的示例?

考虑它的最佳方式是 *.ui.qml 应该用于 UI 元素及其设置。 它们应该与 UI 的结构、布局和样式有关。 这样做也恰好使文件在 Creator 的设计模式下可呈现和可编辑,因为它简化了 QML 的结构,使其可以可靠地呈现和修改它。

*.qml 文件不应包含 UI 元素,而应主要包含函数、属性和信号处理程序。

这种模式有时被称为“代码隐藏”。 它有点遵循与 HTML 和 CSS 相同的理念。 现代 HTML 文档主要表示页面的结构,而 CSS 放置在单独的文件中以控制它们的样式。

在这种情况下,*.ui.qml 文件包含结构和样式,而 *.qml 文件包含行为。 Creator 将创建一对,同时将 QML UI 资源添加到您的项目,其中 .qml 文件继承自 .ui.qml 文件。

除了这个 inheritance 和鼓励模式背后的代码之外,a.qml 和 .ui.qml 文件之间没有真正的区别。 当您将 go 导入设计器时,Creator 还将尝试引导您使用 .ui.qml 版本,以帮助鼓励这种模式。

我会注意到Qt在他们的文档和示例中都违反了这种模式......

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM