我想知道是否可以使用(几个)不同的代表进行QML ListView
.
根据ListView
模型中的单个对象,我想用不同的委托来可视化对象.
这段代码解释了我想要实现的目标:
main.qml
import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2
ApplicationWindow {
title: qsTr("Hello World")
width: 640
height: 480
visible: true
ListModel {
id: contactsModel
ListElement {
name: "Bill Smith"
position: "Engineer"
}
ListElement {
name: "John Brown"
position: "Engineer"
}
ListElement {
name: "Sam Wise"
position: "Manager"
}
}
ListView {
id: contactsView
anchors.left: parent.left
anchors.top: parent.top
width: parent.width
height: parent.height
orientation: Qt.Vertical
spacing: 10
model: contactsModel
delegate: { …
Run Code Online (Sandbox Code Playgroud) 我有一个项目,想要接受它并选择QT作为首选的框架.我一直试图找出如何开始并安装Qt包(SDK和Qt Creator).问题是 - 我无法弄清楚Qt Quick和Qt Widgets的确切用例.我计划使用这些属性来实现项目的长期目的:
考虑到用例,什么是更好的选择 - Qt Widgets还是Qt Quick?
关于我的一点点以及为什么选择Qt - 我已经离开C++近两年了,并且在Qt中没有做过任何严肃的事情但是Qt是一个比Java更好的选择(我不太喜欢).我再次缺乏Python经验.除了那个Python UI很糟糕,如果我必须为一个好的UI安装QT框架,为什么不在Qt中制作整个东西(考虑到我对C++没问题).所以Qt对我来说是更好的选择.由于该项目需要跨平台兼容,因此Qt对我的眼睛更具吸引力.
我目前正在使用Qt 5.2.1 ......我有一个(也许是愚蠢的?)问题:QQuickView
和之间的区别是什么QQuickWindow
?
我看了文档,但我还不清楚......
我正在进行QtQuick 2.0
演示,我想嵌入一些代码示例.是否可以轻松创建突出显示qml元素的语法.
您能否举例说明如何实现它的示例技术和想法.
谢谢
通常我的QML文件import QtQuick 2.4
以及其他导入开头.我怎么知道哪个是导入模块的最新版本而不必猜测类型和构建?
如何Rectangle
在QtQuick 2.0上为可视项目绘制阴影?
我喜欢为我的主窗口画一个阴影(我有一个透明且没有装饰的窗口)
这是一个可重复的例子:
main.qml
import QtQuick 2.0
Item {
id : root
width: 360
height: 360
Text {
id : t1
text: qsTr("Hello World")
property int someNumber: 1000
anchors.centerIn: parent
}
MouseArea {
anchors.fill: parent
onClicked: {
Qt.quit();
}
}
}
Run Code Online (Sandbox Code Playgroud)
main.cpp中
#include <QtGui/QGuiApplication>
#include <QQmlEngine>
#include <QQmlComponent>
#include <QQmlProperty>
#include <QDebug>
#include "qtquick2applicationviewer.h"
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
QtQuick2ApplicationViewer viewer;
viewer.setMainQmlFile(QStringLiteral("qml/untitled/main.qml"));
viewer.showExpanded();
QQmlEngine engine;
QQmlComponent component(&engine, "qml/untitled/main.qml");
QObject *object = component.create();
qDebug() << "Property value:" << QQmlProperty::read(object, …
Run Code Online (Sandbox Code Playgroud) 我想在QtQuick 2.0中创建一个滚动条,
我发现该Scrollbar
组件在QtQuick 1.0中可用,但我在QtQuick 2.0中找不到这样的组件.如何ListView
在QtQuick 2.0中创建滚动条?
有帮助吗?提前致谢.
QMessageBox::information()
当用户希望使用Qt Quick Controls编写QML应用程序时,相当于什么?
我们正在开发我们的第一个Qt/QML应用程序(尝试技术).虽然技术看起来很有前景,但我们面临着许多意想不到的奇怪问题,这些问题在一开始就几乎放弃了.
这里有一个这样的问题.
我们希望应用程序具有以下文件夹布局:
--> ApplicationFolder
|--> qml // QML files (also structured by subfolders)
|--> resources // Application resources (images, sounds, data-files, etc.)
| |--> images // Image resources (also structured by subfolders)
| |--> data // Different data files
| |--> ... // Other resources
|--> Application.exe // Application executable
|--> *.dll // DLLs application depends on
Run Code Online (Sandbox Code Playgroud)
问题是,为了指定Image
QML项目的图像文件,我们必须使用相对于QML文件的路径?!这绝对是疯了.在开发过程中,文件有时会在文件夹之间移动(你移动QML文件并且必须修复它拥有的所有路径?!); 一些不同的QML文件必须引用相同的图像(相同的图像资源,但不同的QML文件中的实际路径不同).
所以问题是:如何指定相对于应用程序文件夹的图像路径?有可能吗?
提前致谢!
PS.在我们的案例中,使用Qt的资源系统(当资源嵌入到可执行文件中时)不是一个选项.我们需要磁盘上的原始资源(包括QML文件本身,至少在开发阶段).
PPS.在花了一整天的时间通过文档/ google/stackoverflow解决了这个问题后写了这个问题; 根本没有成功(大多数示例使用资源嵌入,其他示例太简单,只使用相对路径).