参考视频:黑马程序员Qt(第一部分)
视频教程的源码及ppt资料:qt黑马程序员源码
提取码:yaxi
一、QT是什么呢?
QT是一个跨平台的C++图形用户界面应用程序框架,它是完全面向对象的,很容易扩展,并且允许真正的组件编程。
跨平台!!!就是代码在Windows、Linux等平台兼用的,完全不用修改也可以运行的!!!
QT的代码模板
#include "widget.h"
//QApplication应用程序类
//Qt头文件里没有.h
//头文件和类名一样
#include <QApplication>
int main(int argc, char *argv[])
{
//有且只有一个应用程序类的对象
QApplication a(argc, argv);
//Widget继承QWidget,Widget继承QWidget是一个窗口基类
//所以Widget也是一个窗口类
Widget w;//w就是一个窗口
//窗口默认是隐藏的,需要人为显示
w.show();
//让程序一直执行,等待用户操作
//等待事件的发生(用户操作鼠标即为鼠标事件,操作键盘即为键盘事件)
a.exec();
return 0;//a.exec();等于a.exec();return 0;
}
QT的基本模块
二、显示窗口、父对象和子对象的好处
指定父对象的好处:不用每个按钮都写一行代码去显示,只需要显示作为父对象的按钮即可全部显示子对象的按钮~
主要知识看注释——>
main.cpp
#include <QApplication>
#include <QWidget> //窗口控件基类
#include <QPushButton>
int main(int argc, char **argv)
{
QApplication app(argc, argv);
QWidget w;
w.setWindowTitle(QString("主要看气质")); //设置标题
/*如果不指定父对象,对象和对象(窗口和窗口)没有关系,独立
* a指定b为它的父对象,a放在b的上面
* 指定父对象,有2种方式:
* 1)setParent
* 2)通过构造函数传参
* 指定父对象,只需要父对象显示,上面的子对象自动显示
*/
QPushButton b;
b.setText("^_^"); //给按钮设置内容
b.setParent(&w); //指定父对象
b.move(100, 100); //移动坐标
QPushButton b1(&w); //通过构造函数传参
b1.setText("abc");
w.show();
app.exec();
return 0;
}
三、信号和槽
信号和槽是Qt的重点,一定要好好学~
这个建工程时选择基类一定要选QWidget
至于为什么我也不知道,反正不选的话出来的窗口和按钮的大小就会很奇怪,等我知道再记下来,大佬知道的话也教教我~~~