1.学习了qt quick application

这是一种跟application不同的设计方式。主要就是靠“拖拖拽拽”,然后设置属性(颜色,大小),布局(margins等),然后要注意控件的从属关系。总体来说操作简单,但是花样较少。

2.学习了将QML object暴露给C++

书上的例子:

头文件

#ifndef N_H
#define N_H #include<QObject>
#include<QDebug> class N:public QObject
{Q_OBJECT
public:
QObject *myObject;
//explicit MyLabel(QObject *parent = 0);如果加上这一句就编译错误,不知道什么原因
Q_INVOKABLE void setMyObject(QObject* obj);
}; #endif // N_H

.cpp文件

 void N::setMyObject(QObject* obj)
{ // Set the object pointer
myObject = obj;
myObject->setProperty("visible", QVariant(true));
myObject->setProperty("text", QVariant("Bye bye world!")); }

然后main文件:

#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include<QtQml>
#include"n.h" int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
qmlRegisterType<N>("NN", , , "N");
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); return app.exec();
}

最后是main.qml内:

import QtQuick 2.2
import QtQuick.Window 2.1
import NN 1.0 Window {
visible: true
width:
height: MouseArea {
anchors.fill: parent
onClicked: {
Qt.quit();
}
}
N
{
id:littleN;
}
Text {
id:sha;
text: qsTr("Hello World")
anchors.centerIn: parent
Component.onCompleted:
{
littleN.setMyObject(sha);
}
}
}

除了这样设置属性之外,还介绍了函数的调用,可是没有看懂。。。那就以后再看吧:)

也就是这个函数的用法:

QMetaObject::invokeMethod

Qt5学习(2)的更多相关文章

  1. 我的QT5学习之路(目录)

    说明:本目录内容为自己学习的心得和记录,参考资料来源于网络,学习过程中多方汲取,如有错误,欢迎指正和批评. Qt开发相关文章目录 一.我的Qt学习之路系列 1.[笔记]我的Qt学习之路(一)——浅谈Q ...

  2. Qt5学习笔记(1)-环境配置(win+64bit+VS2013)

    Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...

  3. 我的QT5学习之路(三)——模板库、工具类和控件(下)

    一.前言 作为第三篇的最后一部分,我们来看一下Qt的控件,谈到控件,就会让人想到界面的美观性和易操作性,进而想到开发的便捷性.作为windows界面开发的MFC曾经是盛行了多少年,但是其弊端也随着其他 ...

  4. 我的QT5学习之路(一)——浅谈QT的安装和配置

    一.前言 说到Qt,不能不说到C++,这门伟大的语言.因为其面向对象的编程思想和陡峭的学习曲线,一开始学习起来很是吃力.Qt从QT4开始基本封装了很多C++的工具库和界面库,而且支持跨平台,这是它最大 ...

  5. QT5学习记录(一)

    学习环境:Windows10 + QT5.13 + QT Creater4.9.1(2019-08-10 22:02:30) 1.基本工程创建操作 常规操作创建画面,可选择QDialog.MainWi ...

  6. qt5学习目录

    qt5下载与安装,VS2017的环境配置                                                                               q ...

  7. 我的QT5学习之路(二)——第一个程序

    一.前言 “工欲善其事,必先利其器”,上一节,我介绍了Qt的安装和配置方法,搭建了基本的开发平台.这一节,来通过一个简单的例子来了解Qt的编程样式和规范,开始喽~~~ 二.第一个程序——Hello W ...

  8. Qt5学习记录:QString与int值互相转换

    1)QString转int 直接调用toInt()函数 例: QString str("100"); int tmp = str.toInt(); 或者: bool ok; QSt ...

  9. Qt5学习笔记(基础)

    按钮 #include <QApplication> /*应用程序抽象类*/ #include <QWidget> //窗口类 #include <QPushButton ...

随机推荐

  1. [C#] 调试silverlight的时候,总是报“向占位程序传送了空的索引指针”

    这是由于visual studio在调试silverlight的时候,必须和ie一起工作. 按照以下步骤可以把ie设为visual studio的默认浏览器(不用修改操作系统的默认浏览器): 1) 在 ...

  2. 5分钟了解为什么学习Go

    1.什么是Go语言? Google开源 编译型语言 21世纪的C语言(主流编程语言都是单线程环境下发布的) 2.Go语言的特点? 简单易学习(类似python学习难度,自带格式化) 开发效率高 执行性 ...

  3. Spring的注解@Qualifier注解

    @Qualifier注解了,qualifier的意思是合格者,通过这个标示,表明了哪个实现类才是我们所需要的,我们修改调用代码,添加@Qualifier注解,需要注意的是@Qualifier的参数名称 ...

  4. PHP服务器端API原理及示例讲解(接口开发)

    http://www.jb51.net/article/136816.htm 下面小编就为大家分享一篇PHP服务器端API原理及示例讲解(接口开发),具有很好的参考价值,希望对大家有所帮助 相信大家都 ...

  5. linux 如何编译安装软件

  6. sdk uncaught third Error Cannot assign to read only property 'constructor' of object '#<V>' (小程序)

    sdk uncaught third Error Cannot assign to read only property 'constructor' of object '#<V>' 在a ...

  7. Redis:WRONGTYPE Operation against a key holding the wrong kind of value

    相关连接:通过Canal保证某网站的Redis与MySql的数据自动同步 1.错误信息 redis.clients.jedis.exceptions.JedisDataException: WRONG ...

  8. javascript异步编程 Async/await

    Async/await Async/await 在学习他之前应当补充一定的 promise 知识 它是一种与 promise 相配合的特殊语法,目前被认为是异步编程的终级解决方案 值得我们每一个人学习 ...

  9. 关于opencv中cv::Mat设置roi

    opencv中设置roi实验: cv::Mat SrcImg; SrcImg = cv::imread("../resource/cpw3.png"); cv::imshow(&q ...

  10. ubuntu16.04 无法wifi链接一段时间掉线且无法再连接

    ubuntu16.04 无法wifi链接一段时间掉线且无法再连接,从网上搜索的确认这个一个bug. 解决方法: 1.Get details of your PCI wireless card by r ...