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 ...
随机推荐
- JavaScript跨域问题
通过实现Ajax通信的主要限制,来源于跨域安全策略.默认情况下,XHR对象只能访问与包含它的页面位于同一个域中的资源.这种安全策略可以预防某些恶意行为.但是,实现合理的跨域请求对于开发某些浏览器应用程 ...
- H3C PPP协议的组成
- 第三章 通过java SDK 实现个性化智能合约的部署与测试
想了解相关区块链开发,技术提问,请加QQ群:538327407 前提 已经部署好底层,外网可以正常请求访问. 正常流程 1.基础合约处理 https://fisco-bcos-documentatio ...
- python面向对象之三大特性
继承 先看个简单的例子了解一下继承. class Animal: # 父类 def __init__(self, name, age, department): self.name = name se ...
- js基础-原型
1.定义:我们创建的函数都有一个prototype(原型)属性,该属性是一个对象, 原型模式声明中多了两个属性(自动生成). 构造函数: function Box(nam ...
- hiveservice简介
由于实验的须要,这两天就搭了个Hive,简单记录一下: 平台:OS:Ubuntu Kylin 14.04 JAVA:Java 1.8.0_25 HADOOP:Hadoop 2.4.0 HIVE:Hiv ...
- HDU 3746 Cyclic Nacklace(kmp next数组运用)
Cyclic Nacklace Problem Description CC always becomes very depressed at the end of this month, he ha ...
- 2019.12.15 QLU and SNDU期末联赛
题目列表: 1582.柳予欣的舔狗行为 1587.柳予欣的女朋友们在分享水果 1585.柳予欣和她女朋友的购物计划 1579.FFFFFunctions 1588.Zeckendorf 1586.柳予 ...
- 2018-8-10-win10-uwp-win2d-离屏渲染
title author date CreateTime categories win10 uwp win2d 离屏渲染 lindexi 2018-08-10 19:17:19 +0800 2018- ...
- JavaScript 判断对象中是否有某属性的常用方法
一.点(.)或方框号([ ]) var obj = { test: '123' } obj.test obj['test'] 二.in 运算符 var obj = { test: '123' } te ...