博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Qt使用教程之使用Qt Quick UI表单(三)
阅读量:6456 次
发布时间:2019-06-23

本文共 1536 字,大约阅读时间需要 5 分钟。

hot3.png

<>

实现主视图的应用逻辑

新项目向导将模板代码添加到main.qml文件中来创建菜单项和按钮。通过删除旧的代码和添加新的代码修改模板代码。您可以从UI表单中删除按钮,同时还需要从main.qml中删除相应的代码(或应用程序不能被创建)。

指定主视图的大小

该向导将创建一个类型和一个MainForm类型来指定应用程序主视图。输入应用程序的名称作为标题属性的值。当按钮被点击时,通过删除旧的行所调用函数来清理MainForm代码:

MainForm {
anchors.fill: parent
button1.onClicked: messageDialog.show(qsTr(
"Button 1 pressed"
))
button2.onClicked: messageDialog.show(qsTr(
"Button 2 pressed"
))
}

类型中删除width和height属性,并在MainForm类型中使用一个布局类型来设置主视图的最小值和首选大小。想要使用布局,可导入QtQuick Layouts:

import QtQuick.Layouts 1.1

然后指定MainForm的以下属性:

MainForm {
anchors.fill: parent
Layout.minimumWidth: 800
Layout.minimumHeight: 480
Layout.preferredWidth: 768
Layout.preferredHeight: 480
创建表视图模型

在表视图中使用列表模式显示客户数据。因为列表模式是从几个不同的.qml文件中读取的,通过在CustomerModelSingleton.qml中定义一个singleton类型并在main.cpp注册来访问它。这样,就不必依赖QML context作用域规则来访问列表模型。

1.在Projects视图中,右键单击qml.qrc并选择Add New > Qt > QML File (Qt Quick 2)来创建CustomerModelSingleton.qml文件并将其添加到项目中。

2.从中复制实现。

3.在main.qml中添加以下代码到MainForm来访问列表模型:

tableView1.model: CustomerModel
 
Component.onCompleted: CustomerModel.selection = tableView1.selection

4.在main.cpp文件中注册singleton类型,包含Qt QML模块并在初始化函数中调用qmlRegisterSingletonType()函数:

...
#include <qtqml>
 
int
main(
int
argc, 
char
*argv[])
{
QApplication app(argc, argv);
 
QUrl resourceUrl(QStringLiteral(
"qrc:/CustomerModelSingleton.qml"
));
qmlRegisterSingletonType(resourceUrl, 
"my.customermodel.singleton"
, 1, 0, 
"CustomerModel"
);</qtqml>

5.在main.qml中想要使用已经注册的singleton类型,您必须导入singleton类型:

import my.customermodel.singleton 1.0

有兴趣的朋友可以!

转载于:https://my.oschina.net/u/2317468/blog/619239

你可能感兴趣的文章
思科路由器上的ADSL配置
查看>>
linux护眼软件
查看>>
Online REPL汇总
查看>>
C和指针---第十六章:标准函数库
查看>>
assets文件使用
查看>>
centos:jdk安装
查看>>
phpize无法扩展编译
查看>>
6月第一周全球域名解析商:DNSPod份额1.17%居第9
查看>>
并发用户数详解
查看>>
Android音频开发(1):基础知识
查看>>
mount
查看>>
好久之前的文章
查看>>
iptable配置
查看>>
我的友情链接
查看>>
如何将git项目转移给其他人
查看>>
Cisco——基于链路的HSRP到ISP网络的基本配置
查看>>
vsftp配置大全---超完整版
查看>>
MVC和MVVM的区别
查看>>
Put Polymer Dialog to Center
查看>>
IDEA-常用插件,使用FindBugs寻找bug,代码分析
查看>>