QT学习

 

一、Mac下qt的安装,

安装homebrew-->执行brew install qt-->下载qt creator安装包

偏好设置中设置环境-->编译器修改为clang,qt版本选中本地的qmake文件-->done

注:因为qt安装在usr/local隐藏目录下,无法选中,所以最后一步选择qt版本前,将usr/local/qt拖入个人收藏里,即可再选中。

 

二、基本元素QtClass

1、QObject类是所有Qt对象的基类, 该模型的核心特征是称为信号和槽的对象通信机制。

2、QWidget:是所有用户界面对象的基类,是用户界面的基本单元:它从窗口系统接收鼠标,键盘和其他事件,并在屏幕上绘制自己。

3、QApplication:管理GUI程序的控制流和主要设置,是基于QWidget的,为此特化了QGuiApplication的一些功能,处理QWidget特有的初始化和结束收尾工作。 
对于使用了Qt的任何GUI程序来说,不管何时何地有多少个Window,但只有一个QApplication对象,如果不是基于QWidget的程序,相应的则使用QGuiApplication,后者不依赖于Widget特有的库。

4、QCoreApplication:不包括UI,一大核心功能是提供了event loop,这些event可以来自操作系统,如timer、网络事件,以及其它来源的event都可以被收发。调用exec()函数进入event loop,直到quit()函数调用时才退出,退出时发送aboutToQuit()信号,等同于exit(0)函数,sendEvent()函数立即处理事件,postEvent()函数把事件放入消息队列以等待后续处理,处于消息队列的的event还可以通过removePostedEvent()sendPostedEvent()进行删除和立即处理。

5、QGuiApplication:继承自QCoreApplication,基于非QWidget的,提供了会话管理,用户退出时可以友好地终止程序,如果终止不了还可以取消对应的进程,甚至是保存程序的所有状态用于将来的会话

5、其他QDialog,QLabel,QAbstratacButton,QPushButton,QRadioButton,QLineEdit

6、QChar,QString,QPoint,QSize,QRect,QFont,QPixmap,Qlcon

7、QVBoxLayout、QGroupBox、QListWidget、QStringList

三、信号与槽

1、使用connect,桥接发送者(信号SIGNAL)与接受处理者(槽SLOT)

2、.ui文件会自动生成ui_xxx.h文件,setupUi中默认有QMetaObject::connectSlotsByName(ModelWidget);会默认去关联格式为以下的槽:void on__();

你可能感兴趣的:(QT学习)