问题标签 [qtquick-designer]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
qt - 无法在设计器模式下编辑 QML 文件
我正在尝试使用 qml 设计器,qtcreator 2.0.1
但是当我创建一个新的 qml 项目时,设计器选项卡被禁用。
qml 可以像ui
c++ 中的文件一样在设计器模式下编辑吗?
qt - Qt Creator qml:使用(额外)Qt 组件库(ubuntu)
当我创建一个新的 Qtquick qml 项目并在“设计”模式下修改一个 qml 文件时,我在“库 QML 类型”窗口下看到数量有限的 Qt Quick Basic 组件(如Rectangle
和Button
)
导航到文件夹时,/opt/QTSDK/QtCreator/lib/qtcreator/qtcomponents/
我看到更多组件,例如CheckBox
或RadioButton
我如何在设计模式下使用这些/查看这些?
c++ - QML - 不支持命令式代码
有人可以评论一下,除非它是额外组件QML
的一部分,否则任何命令式代码都不会执行。当我在我的 QML 中包含以下代码时,我遇到了这样的问题:JavaScript
当 Qt Designer 被冻结并显示以下警告时:
Qt Quick Designer 不支持命令式代码
我读到构建qmlpuppet/bin
会在构建它的 Qt 目录中安装一个用于渲染组件的可执行文件。如果 qmlpuppet 在 /bin 目录中, Qt Quick Designer会检查当前项目的 Qt。如果是,则使用 Qt 版本提供的 qmlpuppet,而不是 Qt Creator 本身提供的。在我的情况下,我没有使用 Qt 静态二进制安装,而是从源代码构建 Qt,因此生成了qmlpuppet可执行文件并且已经位于:
因此,可执行 qmlpuppet 被放置在预期可以找到的位置,但这个恼人的消息仍然继续存在。
我目前采取的解决方法是在我想使用 Qt Designer 编辑前端 QML 时注释掉任何所谓的“命令式代码”。然后取出这些评论以再次激活“命令式代码”。但这很烦人,尽管代码按我预期的方式编译和工作。
那么,我应该担心这个警告吗?无论如何,有一些方法可以摆脱这个问题,因为它冻结了 Qt Designer?
qt - 使用 .ui.qml 文件
在 Qt 5.4 中,模板在创建新的“QtQuick UI 文件”时会生成两个文件:MyScreen.qml
和MyScreen.ui.qml
.
该MyScreen.ui.qml
文件似乎仅适用于 UI,因为 Qt Creator 建议您只应在设计模式下编辑它。这意味着我应该在那里创建 UI 对象(标签、按钮等),并以某种方式MyScreen.qml
在逻辑所在的文件中引用它们。原则上这听起来不错,但不幸的是,Qt 没有提供任何关于如何使用这两个文件的示例。
以下是这些文件的内容:
MyScreen.qml
:
MyScreen.ui.qml
(我在设计模式下添加了文本标签):
我尝试实例化 aMyScreen
以在 a 中使用StackView
(见下文),但(不出所料)我没有看到标签。
main.qml
:
QML新手的任何指针?
qt - qt quick QML 应用程序的自定义样式页面(如 HTML 和 CSS)
是否可以在 QT 中创建自定义样式文件并将其应用于所有 QML 文件(如 CSS 确实适用于 HTML )?
QML 是否有任何“类”声明?
c++ - Qt c++和Qml信号槽连接
我为我的项目创建了一个 qt 小部件。按钮,信号和插槽,线程一切正常,我也得到了输出。
对话.h
对话框.cpp
为了创建仪表板的目的,我在 qml 中开发了相同的 ui,当我按下按钮信号和插槽连接时,信号和插槽所有连接的东西。但我不知道如何连接标签按钮,设置启用。
那是qt小部件代码。在那个 dialog.cpp 和 qml 下面
对话框.cpp
dashboard.qml :(就像所有按钮一样)
qt - 在 ui.qml 文件中的组件上添加业务逻辑
我有一个 QML 快速表单,其中有一个图像和一个关联的鼠标区域,如下所示:
现在,根据文档,我应该将业务逻辑分开,设计师创建了一个StatusBar.qml
表单,我添加了:
现在问题是我在 Mac 上使用 Qt 5.9 对其进行了测试并且它工作正常(尽管 Qt 创建者强调了onClicked
抱怨的处理程序exitButtonMouseArea identifier was not valid
。我也尝试过exitButton.exitButtonMouseArea.onClicked:
现在我Qt 5.8
在 Linux 上试了一下,应用程序没有初始化。如果我删除事件处理程序,那很好,当然我不能与图像交互。
所以,我的问题是如何在我的情况下提供 UI 文件之外的业务逻辑。
编辑 在@derM 回答之后,我做了以下事情:
当我的组件初始化时,我从未收到该onClicked
事件。
qml - 在 qml ui 表单中使用行为
有没有办法使用项目外部的行为?(QtQuick 设计器不支持行为)。
假设我在 From.ui.qml 中定义了一个矩形,然后 id 为 rec,在文件 Form.qml 中我想在 rec 的 x 属性上分配一个行为,我该怎么做。
qt - TextArea 有问题的背景 QML QT
尝试不同的代码组合并部分解决我的问题,我遇到了一种我无法解释的行为。因此,当我创建一个没有 Scrollview 的简单 TextArea 时,它看起来像这样:
文本区域创建默认背景。现在我想用 ScrollView 做 TextArea 也用默认的 TextArea 背景,但结果是这样的:
设置默认 TextArea 背景的唯一机会是设置implicitHeight,implicitWidth,但是在将文本输入到 TextArea 直到出现滚动条之后,背景会通过像这样的其他组件在整个长度上延伸:
所以我唯一想要的是一个可滚动的文本区域,但有这个黑色的默认背景,而不是我可以用矩形做的背景。任何人都可以看看吗?谢谢 :)