学习QT前需了解的知识

来源:互联网 发布:js中 符号代表什么 编辑:程序博客网 时间:2024/05/19 17:24

1. 必须要有C++的语言基础。

懂得c++的封装,继承,多态,模板等



2. QT里其实已经使用C++语言封装出各种功能的类,我们最主要的就是学习使用里面的类.

归根到底只有两种方法使用别人封装好的类:

2.1. 用类创建对象,或者到指针指向动态创建出来的对象

然后通过对象或对象指针来访问里面的成员.


2.2 通过继承来扩展里面原来的类,实现自定义的类型.然后再创建对象来使用


创建对象也是两种方法:

一种是直接用类型声明出变量,一种是声明类型的指针变量再存放动态分配出的空间的地址.

然后通过变量或指针来访问里面的成员.



3. QT里已经封装好很多类,每类的类名都是字母“Q”开始的.而且类名都是相关功能的单词,首字母也要大写.

如标签: QLabel

如按钮: QPushButton



4. QT里的类的属性成员的权限不是public的,我们需要通过public的函数成员来访问.

QPushButton里的图标属性成员的操作:

获取按钮的图标对象的函数成员: QIcon icon() const;

设置按钮的图标对象的函数成员: void setIcon(const QIcon & icon);




5. QT里很多类都有父类的,父类还有可能有它自己的父类, …

QT里的类的继承方式都是public继承的.

我们使用一个类时,只需要注意它的和它的祖先类的public成员和protected成员.



6. QT里类对象之间的通信的方式是用signalslot,与其它开发工具不同.

也需注意:signal是没有指定权限的,但在它的派生类里都可以使用的.(估计signalprotected的权限).

slot可以分权限.

每个类都有说明从哪个祖先类里继承了什么:

QPushButton:

AdditionalInherited Members

  • 4 signals inherited fromQAbstractButton

  • 3 signals inherited from QWidget

  • 2 signals inherited from QObject

  • 1 public variable inherited fromQObject

  • 5 static public membersinherited from QWidget

  • 10 static public membersinherited from QObject

  • 1 protected slot inherited fromQWidget

  • 2 protected variables inheritedfrom QObject

  • 1protected type inherited fromQPaintDevice



7. QT的版本:

QT4.5版本(2008年出来的)以上到现在最新的版本区别不大,基本可以兼容的.

下面的版本与现版本跨度比较大,类名与功能都有发生变化。

QT3.3

QT2.2



8. Qt可以跨平台的,也就是QT的源码用不同平台下编译可以实现在不同平台下执行.

QT里的类其实有多个平台版本的,如QSerialPortLinux下就是用Linux的系统编程封装出来的,

Windows上是用Win32api封装出来的

我们只需调用Qt的类就可以实现跨平台,不用考虑它的实现细节.


9. 早期QT开发时,没有IDE开发环境.需要配置环境变量,然后在源码目录里:

qmake project

make

0 0
原创粉丝点击