问题标签 [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.

0 投票
1 回答
4895 浏览

qt - 无法在设计器模式下编辑 QML 文件

我正在尝试使用 qml 设计器,qtcreator 2.0.1但是当我创建一个新的 qml 项目时,设计器选项卡被禁用。

qml 可以像uic++ 中的文件一样在设计器模式下编辑吗?

0 投票
1 回答
530 浏览

qt - Qt Creator qml:使用(额外)Qt 组件库(ubuntu)

当我创建一个新的 Qtquick qml 项目并在“设计”模式下修改一个 qml 文件时,我在“库 QML 类型”窗口下看到数量有限的 Qt Quick Basic 组件(如RectangleButton

导航到文件夹时,/opt/QTSDK/QtCreator/lib/qtcreator/qtcomponents/
我看到更多组件,例如CheckBoxRadioButton

我如何在设计模式下使用这些/查看这些?

0 投票
1 回答
3602 浏览

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?

0 投票
1 回答
5596 浏览

qt - 使用 .ui.qml 文件

在 Qt 5.4 中,模板在创建新的“QtQuick UI 文件”时会生成两个文件:MyScreen.qmlMyScreen.ui.qml.

MyScreen.ui.qml文件似乎仅适用于 UI,因为 Qt Creator 建议您只应在设计模式下编辑它。这意味着我应该在那里创建 UI 对象(标签、按钮等),并以某种方式MyScreen.qml在逻辑所在的文件中引用它们。原则上这听起来不错,但不幸的是,Qt 没有提供任何关于如何使用这两个文件的示例。

以下是这些文件的内容:

MyScreen.qml

MyScreen.ui.qml(我在设计模式下添加了文本标签):

我尝试实例化 aMyScreen以在 a 中使用StackView(见下文),但(不出所料)我没有看到标签。

main.qml

QML新手的任何指针?

0 投票
1 回答
783 浏览

qt - qt quick QML 应用程序的自定义样式页面(如 HTML 和 CSS)

是否可以在 QT 中创建自定义样式文件并将其应用于所有 QML 文件(如 CSS 确实适用于 HTML )?

QML 是否有任何“类”声明?

0 投票
3 回答
1421 浏览

c++ - Qt c++和Qml信号槽连接

我为我的项目创建了一个 qt 小部件。按钮,信号和插槽,线程一切正常,我也得到了输出。

对话.h

对话框.cpp

为了创建仪表板的目的,我在 qml 中开发了相同的 ui,当我按下按钮信号和插槽连接时,信号和插槽所有连接的东西。但我不知道如何连接标签按钮,设置启用。

那是qt小部件代码。在那个 dialog.cpp 和 qml 下面

对话框.cpp

dashboard.qml :(就像所有按钮一样)

0 投票
1 回答
1313 浏览

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事件。

0 投票
1 回答
840 浏览

qml - 在 qml ui 表单中使用行为

有没有办法使用项目外部的行为?(QtQuick 设计器不支持行为)。

假设我在 From.ui.qml 中定义了一个矩形,然后 id 为 rec,在文件 Form.qml 中我想在 rec 的 x 属性上分配一个行为,我该怎么做。

0 投票
0 回答
539 浏览

qt - Qt 快速设计器 main.qml 在创建新项目或示例项目时搞砸了

在创建一个新项目(其中有一个示例 swipeView 和 TabBar 应用程序)或打开示例项目时,当我单击主 qml 的设计选项卡以查看应用程序的外观时,我看到一些项目不在位置(在设计师),很少有没有出现在导航器中。 这仅适用于表单编辑器。qml 代码包含所有内容,应用程序运行良好。但这使得理解示例项目变得困难。

正如您在图片中看到的那样,Navigator 没有显示 TabBar 或 TabButtons,尽管它们出现在屏幕上但也不在位置上(在设计器中显示在顶部,但在运行的应用程序中显示在底部)。

在此处输入图像描述

与此示例项目相同

在此处输入图像描述

0 投票
1 回答
713 浏览

qt - TextArea 有问题的背景 QML QT

尝试不同的代码组合并部分解决我的问题,我遇到了一种我无法解释的行为。因此,当我创建一个没有 Scrollview 的简单 TextArea 时,它看起来像这样:

在此处输入图像描述

文本区域创建默认背景。现在我想用 ScrollView 做 TextArea 也用默认的 TextArea 背景,但结果是这样的:

在此处输入图像描述

设置默认 TextArea 背景的唯一机会是设置implicitHeight,implicitWidth,但是在将文本输入到 TextArea 直到出现滚动条之后,背景会通过像这样的其他组件在整个长度上延伸:

在此处输入图像描述

所以我唯一想要的是一个可滚动的文本区域,但有这个黑色的默认背景,而不是我可以用矩形做的背景。任何人都可以看看吗?谢谢 :)