QML中Flickable.contentY的界限

问Flickable.contentY的界限的正确方法是什么?我需要一个滚动条 我发现 offsetY <= contentY <= offsetY + contentHeight - height offsetY在应用程序开始时为零,除非调整Flickable的大小,否则offsetY似乎是常量 这个公式在一般情况下有效,但可能应该有一个专门的函数 我在没有偏移的情况下轻松创建了滚动条: // ScrollBar.qml import QtQuick 2.0 Rectangle

Qml 创建可拖动的动态项

我有一个包含分组组件(qtreeview)的菜单。我想把它们拖到另一棵树上 树景 TreeView { id: menuView Layout.minimumWidth: 50 Layout.fillHeight: true rowDelegate: Item { height: 30 } height: parent.height p

qml在状态更改后运行javascript代码

我有几个状态,仅用于更改某些属性: Item { id: props property int someProperty: 0 // ... states: [ State { name: "firstState" PropertyChange { target: props someProperty: 1

QML图像大小被忽略

我有一个QML中的ToolButton,图像大小为48x48像素: ToolButton { contentItem: Image { source: "Icons/idea48.png" } } 如果设置宽度和高度,则不会发生任何更改: ToolButton { contentItem: Image { source: "Icons/idea48.png" width: 5 height: 5 }

Qml 如何指定QtQuick Controls 2的默认键盘交互?

默认情况下,QtQuick.controls 2中的控件具有一些键盘响应 例如,组合框将根据向上和向下键更改选择,如果用户按下空格键,框的弹出窗口将打开。我无法找到指定此行为的位置,我需要更改它 目前,我需要返回键来执行空格键正在执行的操作。当然,能够自定义这些键的交互通常是有用的。没有通用的方法来配置Qt Quick Controls 2,以使用返回键执行所有操作,而使用空格键则可以。但是,您可以附加处理程序并自己应用所需的操作: ComboBox { id: comboBox

QML画布剪裁-可能是非矩形的吗?

是否可以在应用程序中显示非矩形项目 将剪裁每个图元的右上边缘: 我关闭了canvas元素上的剪辑并设置了剪辑 上下文的区域。我甚至允许在外面画画 这条路。下面是我用来画它的: Canvas { //id: root // canvas size height: parent.height - 8 width: height anchors.top: parent.top + 4 clip: false z: index + 1 /

Qml 图像的水平滚动

我想创建水平滚动图像。如果你看到黑莓旅行应用程序,在这个应用程序的顶部图像滚动动态。我想创建相同的滚动视图。在图像的底部,我们还可以看到圆圈。随着图像的变化,特定的圆圈变暗。此滚动条有两种方式,即它可以及时滚动,通过单击鼠标也可以滚动。 所以,请帮助我创建这样的滚动。我是新来的。谢谢…这里是一个基于容器的自定义控件,该容器提供了一行圆/点选择范例。标准免责声明适用,出于演示目的,我不保证捕获了所有错误条件等。具体来说,计算选择哪个索引项的数学计算有点不准确,因为默认情况下,容器在每一端的空间不如

将QML选项卡视图内容与另一项对齐,以便选项卡栏与该项重叠

我希望选项卡视图中的实际选项卡内容锚定或排列到另一个视觉元素的底部。在这种情况下,顶部的选项卡栏将与其他相关元素重叠 我的问题是,我不知道如何获取选项卡视图中选项卡内容的y坐标,或者,如何获取选项卡栏中选项卡按钮的高度,以便基于它偏移对齐 我可以想出两种方法来解决这个问题,这两种方法都很笨重: 选项1——我可以创建一个没有内容的选项卡视图,它位于我的另一个元素中。然后我可以用tabsVisible=false创建第二个选项卡视图。然后将2个链接在一起 选项2——我可以覆盖tab:在TabView

Qml 在treeView QtQuick controls 1.4的TableView列中显示文本

我正在尝试创建一个出现在Qt5.5中的简单treeView,问题是尽管模型已满,但树项中的文本不会显示 这是我的代码: TreeViewPM.qml Qt代码: 切换视图 import QtQuick 2.2 import QtQuick.Controls 1.4 import QtQml.Models 2.2 import KMTreeModelPM 1.0 Item { KMTreeModelPM { id: treeModel } ItemSe

Qml 旋转文本时的边界问题

我不明白为什么文本的边界没有改变,仍然和旋转前一样 我只是: Text { font.family: "Arial" color: "#3ba3e4" font.pixelSize: 12 font.letterSpacing: 2 text: "Vasya was here" anchors.left: parent.left rotation: -90 } 当您与parent对齐时,它会显示间隙,我希望它会旋转并一直放置

Qml 文本类型对齐

我有一个QML元素,如下所示: Rectangle { x: 0 y: 0 width: rightDrawer.width height: 35 color: "#35FE45" Text { text: "Settings" font.pixelSize: 19 font.family: "AvantGarde-Med

(如何)访问qml元素到主窗口的相对位置

我有一个qml元素,并希望将(自己的)tooltip元素显示为该元素正上方的新窗口。为此,我需要绝对屏幕位置来放置新窗口(AFAIK) 我知道常规方法是使用“mapToItem”获取相对位置,但我无法到达“主窗口”——因为所讨论的元素位于“加载程序”中(在本例中,该加载程序再次位于另一个加载程序中) 所以我的问题是:是否可以从动态加载的组件内部访问主窗口,或者是否有其他更简单的方法将新(工具提示)窗口锚定在元素的正上方 编辑 mapToGlobal可能也能工作,但我必须使用Qt5.6。 通过在c

如何定义QML组件内联和重写属性?

我尝试了一些看似简单的事情,但失败了:内联定义一个简单的文本格式组件,然后用不同的文本多次实例化它。这是密码 Item { . . . Component { id: favButtonLabelText Text { text: "Blah!" color: StyleSingleton.xNavPrimaryText font.family: StyleSingleton.xNavTextFont font.po

带QML的FbxGeometryLoader

我想通过类型将.fbx文件导入我的,全部在QML中。根据文件 如果安装了SDK并且构建并找到了fbx geometry loader插件,QMesh还将支持以下格式 所以我想要的结果如下: Entity { ... Mesh{ source: "qrc:/3dmodels/potato.fbx" } } 经过一番搜索,我在Qt论坛上找到了一篇帖子,该帖子指示我下载Autodesk SDK并将其包含到我的项目中(通过CMake) 我认为我唯一缺少的部分是为fbx构建几何加载程

如何在qml中传递矩形的颜色数组

我想为如下所示的矩形传递colorModelData。 要求是:点击按钮,我想打开一个弹出窗口。在弹出窗口中,您需要显示多个不同颜色的圆圈。使用按钮,我可以创建一个弹出窗口,将给我的颜色列表?此外,颜色列表应从外部暴露 我怎么做 Rectangle { id: control property var colorModelData: ["Red", "Green", "Blue"] Button{

Qml 什么是forceActiveFocus的对立面?

我有以下QML行: Item { id:container Rectangle { id:rec1 width:20; height:20; x:20; y:20 color:"blue" MouseArea { onClicked:rec1.forceActiveFocus(); } //bla bla } Rectangle {

QML不改变状态

我正在创建一个应用程序,但qml中的状态没有更改…此处LoginView是一个qml文件,MessageView也是一个qml文件我想将qml文件更改为应用程序的页面…我做错了什么,但我无法找出原因…请帮助我 import QtQuick 1.0 Item { id: main LoginView { id: login anchors.fill: parent visible: true onLoginClicked: main.state="message

Qml 动态设置标签';s";id";财产

我正在使用QML语言为SailfishOS开发一个应用程序。 我想通过使用if条件动态设置标签的id属性 这是我的代码: Label { id: { if(myBool == false) { thisText() } else { notThatText() } } width: parent.width

在视图或布局中显示大量QML项的最佳方式

目前,我正在处理人脸识别,必须为GUI创建一个模块,每次识别人脸时,我都需要用不同的字符串显示新项目,图像也需要显示n次,最好的方法是什么?这是一个项目: Item{ width: 300 height: 300 property string names; Rectangle{ property int yvalue; id: firstrect x: 29 y: yvalue width: 300 height: 30

QML无法将未定义的分配给qstring

我正在尝试将图像动态附加到listview。如果我使用ListElement并静态指定路径,它会工作,但是如果我尝试在onAccepted事件中使用FileDialog.fileUrl.toString()执行,它会抛出我在标题中提到的错误。但在控制台上成功打印文件URL。 以下是相关代码: FileDialog { id: aImage title: "Please choose a file" folder: shortcuts.pictures nameFi

Qml按钮固定大小

我已经列出了一个由按钮组成的列表,其代表是RowLayout。该列表从cpp获取数据 我的问题是按钮的宽度可变。按钮侧根据数据进行了更改。我想将fix button保留在一边,并将文本换行若要为按钮提供固定宽度,只需将同名属性设置为固定值即可 按钮有一个内容项,它是一个文本。您可以将wrapMode更改为 由于contentItem的类型为Item,因此不能像这样设置wrapMode: Button { width: 100 text: 'Very very long butt

Qml 创建ComponentDefinition Blackberry 10 Native的新对象实例时应用程序崩溃

我正在使用createObject()创建ComponentDefinition的新对象实例,然后将其添加到容器中。我的应用程序在到达QML中的上述代码行时崩溃 这是我的密码: import bb.cascades 1.0 import Data.UpdateReservationView 1.0 //a custom C++ qmlRegisterType Page { property alias resDetails: updateRes.resDetails att

如何在资源文件中定义字符串并在qml中使用它们

我想在资源文件中定义一些xml格式的字符串,并在qml代码中使用这些字符串。可能吗?怎么做?如果有任何例子,我都将不胜感激。因为我知道没有办法在资源文件中存储字符串。但你还是用另一种方式 第一种方法:使用qt翻译工具创建语言文件。作为奖励,您可以用多种语言存储字符串。 在QML中使用非常简单: Text { text: qsTr("myTextId"); } 有关更多信息,请参阅 第二种方式:将每个字符串存储在不同的资源文件中。 但是在这种情况下,你需要用C++插件来扩展QML,以获得

QQuickView(QML)对鼠标事件透明

我有一个大矩形,中间有一个按钮。我想我的矩形是透明的鼠标事件,除了按钮,它必须是可点击的。我的意思是,我希望能够用鼠标选择矩形下的代码,就像没有显示矩形一样 我为所有大矩形添加了一个MouseArea,试图忽略鼠标事件,但它不起作用 我读到'Qt::WA_TransparentForMouseEvents'用于此目的,但据我所知,在Qt-windows中,fasr不适用于我的情况 提前谢谢 我的QML是从main.cpp加载的: QQuickView* pView = new QQuick

创建组件后很好地显示Qml窗口

我想在非常慢的硬件上以全屏模式启动Qt Quick应用程序。这意味着您可以直接观察UI的构建过程。那可不好。 我已经尝试过在我的窗口的OnCompletion中设置visiblity=true,但没有任何帮助 我想在每次加载和布局都完成后很好地展示我的应用程序 感谢您的帮助不久前有一篇关于优化Qt Quick应用程序的文章。以下是该列表中的注意事项: 做: 将应用程序设计为从一开始就快速启动。想想你希望用户首先看到的是什么 制作启动动画以允许并行加载 使用链条装载。只运行CPU中的内核数量的加

QML语法是LALR(1)吗?

以下是QML语法(摘自): 是LALR(1)吗?我的程序为包含冲突项的闭包I[n]引发reduce/reduce冲突: // other items here... [item ::= identifier . , {] // -> ACTION[n, {] = reduce to item [type ::= identifier . , {] // -> ACTION[n, {] = reduce to type // other items here... 注:

动态更改用作qml项基础的模型

我开始使用qtquick 1.1。我设计了一个主要由pathview组成的组件 Rectangle { id: pathViewElement PathView { id: pathView pathItemCount: 4 preferredHighlightBegin: 0.5 preferredHighlightEnd: 0.5 highlightRangeMode: PathView.Str

如何知道何时从Qt5中的QML Webview聚焦输入字段

我正在为嵌入式linux开发QML中的UI(目前为raspberry pi/raspbian,但硬件很快就会改变)。我正在使用Qt5.0.2 我使用QML WebView集成了一个QWebKit浏览器 我想知道何时关注输入字段,我发现了一些使用JS(使用addJavaScriptObject或evaluateJavaScript)的解决方案,但所有这些解决方案都适用于Qt4.7/4.8,Qt5似乎大大减少了QML WebView可用方法的数量 你知道获取这些信息的方法吗?我们可以直接在QML文件

Qml 三顶点QSGGeometryNode深度(z)问题

我正在Qml场景图中绘制一个3D几何体(Point3D顶点),其中包含一个自定义的QSGGeometryNode和QSGTransformNode。除了三维模型在某个z坐标处被切断(z是Qml中的深度轴)外,此操作有效。首先,我认为问题是由于与Qml 2D平面相交造成的。但我尝试沿z轴移动模型,它总是被切断(好像有一个局部模型平截头体剪裁平面) 这个问题的根源是什么 关于,不幸的是,您不能“仅”渲染场景内的3D内容,因为场景图将使它们尊重项目的正确堆叠 如果您有一个3D对象,您可能想改用它(另请

Qml 将GridLayout与QabStretchModelList和中继器一起使用

我在QtQuick(QML)中有以下问题。我想在表格布局中显示一个包含QAbstractListModel数据的表格。我使用GridlĹ布局和中继器: ScrollView { id: scrollView width: parent.width anchors.fill: parent clip: true ScrollBar.horizontal.policy: ScrollBar.AlwaysOn

Qml 如何通知焦点?

此问题已编辑: 我和QML一起工作 我有一个名为polygon的自定义类型,它是QDeclarativeItem的子类 当鼠标单击多边形(具有焦点)时,我希望收到通知 我知道QDeclarativeItem有一个功能:聚焦 我在Polygon.cpp中覆盖它,这里是Polygon.cpp #include "polygon.h" #include "point.h" #include <QPainter> #include <stdio.h> #include <i

BB 10级联qml发送一封简单的电子邮件

我在git hub for BB 10中找到了一个发送电子邮件的例子,但它看起来相当复杂,而且很多都是用C语言完成的 有人举过如何使用QML发送快速电子邮件的例子吗。我不需要任何按钮或文本字段,只需要硬编码的值 我发现了这个简单的剪报,但不知道如何整合它 任何帮助都将不胜感激。在main.cpp中创建您的QmlDocument qml->(“您的快捷方式”,object) void xxx::invokeEmail(){ InvokeManager InvokeManager; 调用请求; r

Qml 等待工作表在blackberry 10中关闭

我目前正在使用bb10应用程序 我有QML文档main.QML。它包含一个按钮 单击按钮时,我正在调用一个函数HandleClickEvent() 在HandleClickEvent()内部,我正在调用一个函数DisplaySheet() 在DisplaySheet()函数调用之后,我立即调用另一个函数GetData()insideHandleClickEvent() 在DisplaySheet()函数中,我正在创建工作表的完整UI并显示它。 用户可以使用工作表中的按钮将其关闭 我希望函数Get

Qml 交换BB 10级联中的列表视图位置

我在这里读过一篇文章,我们可以交换容器组件。我遵循相同的过程,它对我有效。当我对Costude Listview应用相同的过程时,我得到 控制台上的“ReferenceError:找不到变量:tadawulList” Container { id:trade layout: StackLayout { orientation: LayoutOrientation.Lef

Qt快速(QML)颜色声明

我在ListView声明中有以下语句: highlight: Rectangle { color: "lightsteelblue"; radius: 5 } 一切正常,但我只是想知道,word中的哪个文件声明了lightsteelblue,这样我就可以查看其他预定义的颜色了?表示它通常指定为SVG颜色名称,并提供了。我知道QML支持其中列出的不同关键字名称 编辑:正如@dbrianj(谢谢)所指出的,您可以在文件中找到它们。@KeillRandor好的,但是必须在Qt安装的某个地方声明,哪个

控制QML中的拆分视图边框

我有一个拆分视图,在这个拆分视图中我有两个元素(矩形(用户)和一个项目,其中包含列布局(进程)) 用户可以选择是否希望看到用户。若他不想看到用户,那个么,我将矩形宽度设置为0,他只能看到进程,但问题是在那个窗口中,有两个边框。 一个来自窗口,一个来自SplitView 你知道如何去掉这些双边框吗?尝试将矩形的可见属性设置为false(而不是将宽度更改为0) 在本例中,您可以更改splitview的可见左“边框” (边框不是边框,而是第一个和第二个元素之间的splitview滑块): Applic

从QML连接到WiFi PQ>是否可以从QML连接到WiFi(不写一些C++代码)?< /P>

据报道,这是可能的。这篇文章从导入B2Qt.Wifi 1.0开始,这意味着这样的模块是可用的,但我得到一个错误模块“B2Qt.Wifi”没有安装 我有一个商用Qt5.7,我安装了所有组件,所以它应该在那里。但是,在整个安装目录中没有具有此名称的模块 我试着在Windows和Linux上做同样的结果 也许我需要从其他地方下载这个模块?不过这会很奇怪。B2Qt的意思是“启动到Qt”。它适用于您准备图像然后将其闪存到设备上的设备 因此,它使用内置于该映像中的特定网络管理器。还有一个B2Qt.Wifi模

QML:拍摄整个listview的屏幕截图(包括剪裁部分)

是否有任何方法可以截取整个listview的屏幕截图,甚至截取的部分 到目前为止,我已经尝试: Flickable { id: testFlick anchors.fill: parent contentHeight: tstListView.height contentWidth: 400 ListView { id: tstListView width: 100 height: contentHeight

doxygen未从输入筛选器(doxyqml)生成输出

我试图通过doxygen使用来生成QML文档,但是文档页面没有被创建 根据doxyqml文档,我在文件模式中添加了一个*.qml条目,并在过滤器模式中添加了*.qml=doxyqml(doxyqml可从/usr/bin获得,因此只要在命令行上调用doxyqml就足以启动它) 从doxygen输出中,我可以看到*.qml文件模式正在工作,因为文件出现在输出的“读取”阶段,而不是解析阶段。如果我向文件中添加一个#define或其他一些非QML语句,那么doxyqml错误将出现在doxygen输出中,

应用程序窗口上部的QML状态栏-为什么?

我有以下QML的应用程序窗口: import QtQuick 2.4 import QtQuick.Controls 1.3 import QtQuick.Window 2.2 import QtQuick.Dialogs 1.2 import QtMultimedia 5.0 import QtQuick.Layouts 1.0 import QtTest 1.1 import "gui/windows" import "gui/items" ApplicationWindow {

将activeFocus设置为QML选项卡视图中的项时出现问题

当用户更改“我的选项卡视图”中的当前选项卡时。我想将activeFocus设置为当前选项卡中的顶级项,例如使用forceActiveFocus。然而,出于某种奇怪的原因,选项卡视图将activeFocus设置为它在选项卡中找到的第一个按钮,即使该按钮设置了“focus:false”。 如下面的输出所示。当我使用forceActiveFocus将焦点设置为顶级项时。首先,该项获得焦点,然后它立即失去焦点,按钮反而获得焦点。如果选项卡中没有按钮,则它将按预期工作。我需要关于解决这个问题的建议。我想知

Qml 如何用鼠标选择文本编辑区域

我想用鼠标选择文本的一个区域 TextEdit { id: edit anchors.fill: parent font.pixelSize: 18 focus: true wrapMode: TextEdit.Wrap text: "bla bla" } 我可以用键盘选择并用鼠标单击以获得焦点,但我不能用鼠标选择文本区域 这可能吗。谢谢 找到了 selectByMouse: true 这

Qml图表视图未缩放到X轴的最大值

我有Qml图表视图,我正在运行时添加行序列。 我还在运行时向这些系列添加数据点。 但对于我添加到系列中的最后一点,图表没有更新X轴最大值。 并且图表没有缩放到X轴的最大值 我有ValueAxis,一旦我向序列中添加点,我将更新其最大值。 我还调用了ChartView.update()来刷新图表,但没有效果

Qml 如何访问ListDelegates/ListView中的项目?

我不熟悉Qt/QML编码,在访问listview中listdelegate中的元素方面,我面临一个问题 例如,如果我的Qml看起来像这样 Item { id: item_id property int focus_id: 0 function setFocusImageSource() {} ListView { id: listView_Id delegate: listViewdelegate model: listModeldata } Component

Qml 在QNX Momentics IDE中添加Qt

我有使用blackberry java环境的经验。但我需要了解blackberry 10开发中基于QNX的IDE。我成功安装了所有安装程序。并运行了一些小示例。 我需要用Blackberry10开发覆盖流。我的一些朋友告诉我,这可以用Qt来完成。但我在导入Qt时出错。问题是什么。我如何使用QNX Momentics开发封面流程?请看一看。它描述了如何为BlackBerry设置和构建Qt。不过,我不确定QNX Momentics是否能做到这一点。 也来看看。我不确定您是否能够在Momentics

Qml 如何在多个单元格中将项目添加到日历中

我想在Qt5.3中试用Qml的新日历对象。因此,我想在单元格的特定坐标处添加一些项目,例如矩形。要将矩形添加到一个单元格中,我使用dayDelegate: Calendar{ id: calendar width: parent.width * 0.5 height: parent.height * 0.5 style: CalendarStyle { dayDelegate: Rectangle {

Qml 在持续时间内我可以得到剩余时间吗

我需要帮助~ 我实现了一个包含两个组件的动画。 一个开始动画,在另一个开始之前。 代码如下所示 A.qml PropertyAnimation { id: ani1 target: comp1 property: "height" to: 1000 duration: 300 } // if comp1.height == 300 then ani2.start() B.qml PropertyAction { target: comp2

Qt 3D QML几何体渲染器

我试图使用QML GeometryRenderer绘制自己的3D几何图形,但出现了一些问题。我添加了其他3D元素来检查它们是否被显示,这会发生。有人有什么建议吗?我认为这个问题与几何定义有关。当我在GeometryRenderer中使用著名的球体测量法更改自己的几何体时,球体将正确显示。我在Qt网站上找不到完整的文档,甚至找不到一个简单的示例来测试和用作启动项目 以下是我的代码: GeometryRender.qml import Qt3D.Core 2.12 import Qt3D.Rende

  1    2   3   4   5   6  ... 下一页 最后一页 共 12 页