标签: qt-quick

QML:渲染qml屏幕时出现问题

我在其中一个开发板上渲染QML屏幕时遇到问题

在某些屏幕上,我有悸动的GIF图像,在这里我可以看到屏幕的背景颜色,如图所示. QML中的刷新问题

在某些屏幕上,我有列表视图,我通过JavaScript更新,这没有生效,因为我无法在列表视图元素中看到更新的图像/文本.

这是与刷新屏幕有关的某种问题吗?

在IX86上使用QML编译时,相同的代码在Ix86上运行良好.

qt qml qt-quick

8
推荐指数
1
解决办法
581
查看次数

如何在QML中延迟JavaScript操作?

我正在构建一个基于QMLC++应用程序.

简单来说:

在我的主要QML文件中,我有一个按钮(Rectangle)在单击时调用JavaScript函数(在外部JS文件中定义):

// My JS file linked to the main QML window
[...]
function actionOnButtonClicked()
{
    var x = 0;
    var y = 0;
    for(var i = 0; i < 3; i++)
    {
        createObject(x, y);
        x = x + 10;
        y = y + 10;
    } 
}
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,在这个函数中,我调用n(= 3 here)和另一个JS函数来动态创建几个 QML对象以添加到场景中:

function createObject(xPosition, yPosition)
{
    component = Qt.createComponent("Symbol.qml");
    component.createObject(windowApp, {"x": xPosition, "y": yPosition});
}
Run Code Online (Sandbox Code Playgroud)

这工作正常.但是创建的对象(Symbol)出现在带有翻译动画的windowApp中(大约1秒钟),我想在创建第二个对象之前等待第一个对象的动画完成...

由于我们不能在QML中使用setTimeOut() JavaScript函数,我想知道如何实现这一点.我看不出如何使用QML Timer对象甚至是PauseAnimation ...... …

javascript c++ qt qml qt-quick

8
推荐指数
1
解决办法
6473
查看次数

QML:从设计感知到qml页面之间的导航

我们需要开发一个QtQuick项目,我们有大约100个屏幕.

我曾尝试为导航制作一个演示项目,按钮点击时有三个屏幕.我在页面之间的导航中使用了"States"的概念.最初我尝试使用'Loader',但加载器无法保留以前的页面状态,它在导航过程中重新加载整个页面.

下面是main.qml的代码片段

// import QtQuick 1.0 // to target S60 5th Edition or Maemo 5
import QtQuick 1.1

Rectangle {
    id:main_rectangle
    width: 360
    height: 640

    Page1{
        id:page1
    }

    Page2{
        id:page2
    }

    Page3{
        id:page3
    }

    states: [
        State {

            name: "page2"

            PropertyChanges { target: page3; visible:false; }
            PropertyChanges { target: page1; visible:false; }
            PropertyChanges { target: page2; visible:true; }
        },
        State {
            name: "page1"
            PropertyChanges { target: page3; visible:false; }
            PropertyChanges { target: page2; visible:false; }
            PropertyChanges { target: page1; …
Run Code Online (Sandbox Code Playgroud)

c++ qt qml qt-quick

8
推荐指数
2
解决办法
9547
查看次数

从QML调用C++方法(Qt快速应用程序)

所以,我已经做了一些搜索,我读过的类似问题都没有提出有效的建议.

我正在使用Qt Creator(而且我对Qt不太熟悉)所以我不确定它在后台做了什么伏都教.但是,我正在使用标准的Qt Quick Application项目.

本质上,我想从QML调用一个C++函数,它返回一个字符串,定期替换布局中的一些文本.

这是main.cpp:

#include <QtGui/QApplication>
#include "qmlapplicationviewer.h"
#include <QDeclarativeContext>


class testClass : public QObject
{
    Q_OBJECT
public:
    Q_INVOKABLE QString gimmeText() {
            return QString("new text");
}
};



Q_DECL_EXPORT int main(int argc, char *argv[])
{
    QScopedPointer<QApplication> app(createApplication(argc, argv));

    QmlApplicationViewer viewer;

    viewer.setOrientation(QmlApplicationViewer::ScreenOrientationAuto);
    viewer.setMainQmlFile(QLatin1String("qml/Picenter2/main.qml"));

    testClass t;
    viewer.rootContext()->setContextProperty("testOb", &t);

    viewer.showFullScreen();

    return app->exec();
}
Run Code Online (Sandbox Code Playgroud)

这里有一个布局片段(因为大部分内容显然无关紧要):

Text {
    id: text1
    x: 105
    y: 156
    color: "#ffffff"
    text: qsTr("text")
    font.pixelSize: 12
    Timer {
        interval: 1000; running: true; repeat: false
        onTriggered: text1.text = testOb.gimmeText();
    } …
Run Code Online (Sandbox Code Playgroud)

c++ qt qt-quick

8
推荐指数
2
解决办法
8818
查看次数

将SQLite与Qt Quick集成

我正在尝试使用QT Quick包含SQLite数据库,但我找不到任何示例.我只是想能够访问数据库中的项目.有谁知道我可以玩的任何示例程序?

sqlite qml qt-quick

8
推荐指数
2
解决办法
1万
查看次数

Qt5 QML错误未安装QtQuick QtGraphicalEffects

在成功编译项目之后,我获得了一个可执行文件.

当我输入./program结果时,我看到:

QML Error: qrc:///qml/main.qml:25:1:module "QtGraphicalEffects" is not installed
qrc:///qml/main.qml:24:1:module "QtQuick" is not installed
Run Code Online (Sandbox Code Playgroud)

我正在使用QtQuick 2.0,Qt5和Ubuntu,QtQuick和QtGraphicalEffects,~/Qt5.0.2/5.0.2/gcc/qml/我已经从站点项目安装了新的Qt SDK.

我已尝试在Windows 7上运行此应用程序,但结果相同.

有人可以帮忙吗?

qt qml qt-quick qt5 qtquick2

8
推荐指数
1
解决办法
8472
查看次数

8
推荐指数
1
解决办法
3147
查看次数

在Column中对齐horizo​​ntalcenter

Column 文档解释了如何实现这一目标:

在此输入图像描述

但是,我想实现这个目标:

在此输入图像描述

也就是说,其中的所有项目Column都应该与中心水平对齐.anchors.horizontalCenter: parent.Center不起作用.如何获得所需的结果?

qt qml qt-quick qtquick2

8
推荐指数
2
解决办法
8115
查看次数

来自委托的QML TableView访问模型属性

我有一个TableView,我已经定义了自己的itemDelegate.现在,从这个委托中我可以使用styleData.value访问列的值,但是我还需要访问同一个项目中的其他属性,但我找不到如何操作.

我需要这个,因为文本样式需要根据项目模型的其他属性进行更改.

有任何想法吗?谢谢!

qt qml qt-quick qtquick2 qtquickcontrols

7
推荐指数
2
解决办法
1万
查看次数

Flickable中的MouseArea阻止它轻弹

我正在使用MouseArea实现手势捕捉器(向左/向右滑动).它应该在Flickable内部使用垂直flickableDirection.此外,它应该以可视堆栈顺序将鼠标事件传播到其下的其他元素.问题是,将propagateComposedEvents设置为true的子mouseArea 在完成一次单击之前阻止任何父级的轻弹.首次点击后,它正常工作.这是显示此内容的简化代码.

import QtQuick 2.4
import QtQuick.Window 2.2

Window {
    id: __root
    visible: true
    width: 460; height: 640

    Flickable {
        id: mainFlickable

        width: parent.width
        height: parent.height
        contentHeight: column.height
        flickableDirection: Flickable.VerticalFlick

        MouseArea {
            anchors.fill: parent
            propagateComposedEvents: true
            z: 1
        }

        Column {
            id: column

            width: parent.width

            Repeater {
                model: 5

                Rectangle {
                    width: __root.width
                    height: 200

                    color: "yellow"
                    border.width: 2

                    MouseArea {
                        anchors.fill: parent

                        onClicked: {
                            console.log("clicked")
                        }
                    }
                }
            } //repeater
        } //column
    } //flickable
} …
Run Code Online (Sandbox Code Playgroud)

qt qml qt-quick qt5

7
推荐指数
1
解决办法
3242
查看次数

标签 统计

qt-quick ×10

qml ×9

qt ×8

qtquick2 ×4

c++ ×3

qt5 ×2

javascript ×1

qtquickcontrols ×1

sqlite ×1