QT基础学习之路

以下内容是自己想要学习的东西,从FinderCheng前辈的BLOG中学习到的,如有冒犯请告知,我会第一时间修正。

最近在看FinderCheng前辈的QT学习之路 从中总结出了自己想要学习的东西 留个信号,自己以后再来看的时候知道自己从哪里看过,并且可以更好的记住。


1、QT的SIGNAL/SLOT机制使得程序看起来很明白,类似于windows下面的消息机制

不过也带来一点小麻烦 必须要使用QT的qmake对程序进行预处理,才能够使用make或者nmake进行编译。并且它的界面也不是原生风格的,QT使用style机制十分巧妙的模拟了本地界面。(这些自己具体的没有实验或者查看更多的资料)

2、.pro就是工程文件,它是qmake自动生成的用于生产makefile的配置文件

3、QT中头文件和类名是一致的。如果要使用某个类的话,它的类名就是它的头文件名。

4、QApplication对象,这个对象用于管理应用程序级别的资源。QT在一定程序上是支持命令行参数的。

5、return a.exec();将应用程序的控件权移交给QT,这时,程序的事件循环就开始了,这时可以响应你发出的各种事件了。

6、QT也是支持HTML解析的。

7、在QT程序中QApplication app(argc, argv);return app.exec();这两句是必不可少的。

8、QObject是所有类的根,QT使用这个QObject实现了一个单根继承的C++,它里面有一个connect()静态函数,用于连接信号槽。QT使用信号槽机制完成了事件监听操作。

9、组件定位技术,绝对定位和布局定位,只要把组件放入某一部局之中,当需要调整大小或者位置的时候,QT就知道该怎样进行调整。

QT一共有3种主要的layout分别是

1、QHBoxLayout 按照水平方向从左到右布局

2、QVBoxLayout 按照竖直方向从上到下布局

3、QGridLayout 在一个网格中进行布局,类似于HTML的table

layout使用addWidget添加组件,使用addLayout添加子布局,

时间: 2024-12-29 06:54:45

QT基础学习之路的相关文章

Android 零基础学习之路

第一阶段:Java面向对象编程 1.Java基本数据类型与表达式,分支循环. 2.String和StringBuffer的使用.正则表达式. 3.面向对象的抽象,封装,继承,多态,类与对象,对象初始化和回收:构造函数.this关键字.方法和方法的参数传递过程.static关键字.内部类,Java的垃极回收机制,Javadoc介绍. 4.对象实例化过程.方法的覆盖.final关键字.抽象类.接口.继承的优点和缺点剖析:对象的多态性:子类和父类之间的转换.抽象类和接口在多态中的应用.多态带来的好处.

QT基础学习笔记

Qt简介:1991, 挪威奇趣科技Trolltech开发的跨平台c++图形用户界面(GUI)应用程序开发.2008,被诺基亚收购2012,转让给芬兰的Digia公司. 商业版:专业版,企业版: // 开源版(GNU) 优势:1.跨平台 2.面向对象 3.丰富API 类库  4.可视化编程 5,时间驱动机制 JAVA--compile once, run anywhere    一次编译,到处运行Qt-- wrire once ,comile anywhere     一次编写,到处编译 桌面操作

JAVA基础学习之路(一)

JAVA基础概念: PATHl: path属于操作系统的属性,是系统用来搜寻可执行文件的路径,个人理解是类似于linux中的全局变量 CALSSPATH:java程序解释类文件时加载文件的路径 注释: 单行注释  // 多行注释 /*.......*/ 文档注释 /**......*/ JAVA两类数据类型: 1基本类型 数值类型: 整形:short ,int,long 浮点型:float,double 字符类型:char 布尔类型:boolean 2引用类型 数组,类,接口 数据类型转换基本原

JAVA基础学习之路(五)数组的定义

什么是数组:就是一堆相同类型的数据放一堆(一组相关变量的集合) 定义语法: 声明并开辟数组 数据类型 数组名[] = new 数据类型[长度]: 分布完成 声明数组:数据类型 数组名 [] = null; 开辟数组:数组名 = new 数据类型[长度]: public class test2 { public static void main(String args[]) { int arr[] = new int[3]; arr[0] = 1; arr[1] = 2; arr[2] = 3;

【jq】c#零基础学习之路(3)继承和虚方法

c#只能继承一个基类和多个接口(0+) 父类:Human: class Human { public virtual Move() { Console.WriteLine("Human的虚方法"); } public viod Play() { Console.WriteLine("Human的Play方法"); } } 子类:Chinese: class Chinese:Human { public override void Move() { Console.W

python基础学习之路No.2 数据类型

python中常见的数据类型有:整数.浮点数.字符串.列表.元组.字典 python相较其他语言,可以省略了声明,可以直接定义赋值使用. 例如: a=12 就相当于 其他语言中的  int a=12  省略的声明数据类型的int ?下面举例定义各类型的变量: 1.定义一个整数(int) a = 1 2.定义一个浮点型(float) b = 1.2 3.定义一个字符串(string) c = "hello"   (注:python中没有单引号双引号的区分,即还可写成:c = 'hello

【jq】c#零基础学习之路(4)抽象类和密封

一.抽象类 1.抽象类不能被实例化 2.抽象类方法必需要实现 3.如何类中函数为抽象函数,其类也需要定义成抽象类 4.关键字 abstract ,函数重写 override. 二.密封类 1.密封类不能被继承 2.密封方法只能密封override 方法,也就是说 sealed 与override一起使用.

JAVA基础学习之路(四)定义简单java类

简单java类开发一般原则: 类名称必须有意义,再怎么说,要让人家看的明白吧 类之中所有属性必须使用private封装,并提供setter,getter方法 类之中可以有多个构造方法,但是必须保留有一个无参数构造方法 类之中不允许出现任何输出语句,所有输出必须交给被调用处 类之中需要有一个可以取得对象完整信息的方法,一般叫做getInfo(),返回String型数据 class Book { private String name; private int price; private int

JAVA基础学习之路(十)this关键字

class Book { String name; int price; int num;//构造方法之间的互相调用解决了代码的重复问题,但是一定要留出口 public Book() { this("请输入书名",0,0); } public Book(String name) { this(name,9999,9999);//this调用方法 } public Book(String name,int num) { this(name,num,9999); } public Book