Qt5学习(2)
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)的更多相关文章
- 我的QT5学习之路(目录)
说明:本目录内容为自己学习的心得和记录,参考资料来源于网络,学习过程中多方汲取,如有错误,欢迎指正和批评. Qt开发相关文章目录 一.我的Qt学习之路系列 1.[笔记]我的Qt学习之路(一)——浅谈Q ...
- Qt5学习笔记(1)-环境配置(win+64bit+VS2013)
Qt5学习笔记(1)-环境配置 工欲善其事必先-不装-所以装软件 久不露面,赶紧打下酱油. 下载 地址:http://download.qt.io/ 这个小网页就可以下载到跟Qt有关的几乎所有大部分东 ...
- 我的QT5学习之路(三)——模板库、工具类和控件(下)
一.前言 作为第三篇的最后一部分,我们来看一下Qt的控件,谈到控件,就会让人想到界面的美观性和易操作性,进而想到开发的便捷性.作为windows界面开发的MFC曾经是盛行了多少年,但是其弊端也随着其他 ...
- 我的QT5学习之路(一)——浅谈QT的安装和配置
一.前言 说到Qt,不能不说到C++,这门伟大的语言.因为其面向对象的编程思想和陡峭的学习曲线,一开始学习起来很是吃力.Qt从QT4开始基本封装了很多C++的工具库和界面库,而且支持跨平台,这是它最大 ...
- QT5学习记录(一)
学习环境:Windows10 + QT5.13 + QT Creater4.9.1(2019-08-10 22:02:30) 1.基本工程创建操作 常规操作创建画面,可选择QDialog.MainWi ...
- qt5学习目录
qt5下载与安装,VS2017的环境配置 q ...
- 我的QT5学习之路(二)——第一个程序
一.前言 “工欲善其事,必先利其器”,上一节,我介绍了Qt的安装和配置方法,搭建了基本的开发平台.这一节,来通过一个简单的例子来了解Qt的编程样式和规范,开始喽~~~ 二.第一个程序——Hello W ...
- Qt5学习记录:QString与int值互相转换
1)QString转int 直接调用toInt()函数 例: QString str("100"); int tmp = str.toInt(); 或者: bool ok; QSt ...
- Qt5学习笔记(基础)
按钮 #include <QApplication> /*应用程序抽象类*/ #include <QWidget> //窗口类 #include <QPushButton ...
随机推荐
- DOM事件和一些实用笔记
let el = document.body.querySelector("style[type='text/css'], style:not([type])");返回HTML文档 ...
- Javassist指引(二)--ClassPool
原文链接 上一章: Javassist指引(一) 2.ClassPool ClassPool是一个CtClass的容器.因为编译器随时可能访问一个CtClass类,所以一旦一个CtClass创建,它将 ...
- js 页面分享
首先说分享到QQ空间的通用代码:<a href="javascript:void(0);" onclick="window.open('http://sns.qzo ...
- Nuget 通过 dotnet 命令行发布
在开发完成一个好用的轮子就想将这个轮子发布到 nuget 让其他小伙伴可以来使用,但是 nuget.org 的登陆速度太慢,本文介绍一个命令行发布的方法,通过命令行发布的方法可以配合 Jenkins ...
- Django入门总结
- LR性能测试自动化集成JENKINS
LR11不支持JENKINS集成,解决方案可以使用BAT代替执行,JENKINS定时调用BAT执行性能测试用例. 1. 先随便录制l一个LR脚本,保存为 D:\TEST\test01 2. 打开 ...
- H3C配置文件的显示与维护
- dotnet 动态代理魔法书
看到标题的小伙伴是不是想知道什么是魔法书,如果你需要写一段代码,这段代码是在做神奇的业务,只有你查询到了魔法书你才能找到这个对象,同时你还需要实现自己的接口,通过自己实现的接口调用才能用到有趣的方法 ...
- PowerShell 通过 WMI 获取系统安装软件
本文告诉大家如何通过 WMI 获取系统安装的软件 通过 Win32_Product 可以获取系统安装的软件 Get-WmiObject Win32_Product | Format-List Capt ...
- hibernate 大对象类型的hibernate映射
在 Java 中, java.lang.String 可用于表示长字符串(长度超过 255), 字节数组 byte[] 可用于存放图片或文件的二进制数据. 此外, 在 JDBC API 中还提供了 j ...