基本带窗口创建的项目具备以下几个文件:
.pro :工程管理文件 ——》 用于管理各种模块,名字,连接等
在后续添加、通讯模块、多媒体、数据库等模块时需要用到
头文件 :各种.h结尾的头文件,如widget.h
源文件 :主函数main.cpp 和函数文件如:widget.cpp等与头文件对应;
界面文件 :ui文件;
资源文件:需要手动创建,例如图片等音频等;
pro 工程文件
widget.h 头文件中内容
#ifndef WIDGET_H //防止头文件重复包含
#define WIDGET_H
#include <QWidget> //包含头文件》》QWidget窗口类的头文件
namespace Ui {
class Widget;
}
//写一个Widget的类继承于QWidget
class Widget : public QWidget
{
Q_OBJECT //宏 允许用信号与槽机制
public:
explicit Widget(QWidget *parent = 0); //有参构造函数,默认是0
~Widget(); //析构函数
private:
Ui::Widget *ui;
};
#endif // WIDGET_H
main.cpp 主函数
#include "widget.h" //包含头文件
#include <QApplication> //包含一个应用程序类头文件
//主函数进入窗口,传两个值 argc是命令行变量数量 argv[]命令行变量数组
//所有的输入命令均有这两个参数接受到程序中。
int main(int argc, char *argv[])
{
// a 是应用程序对象,把外界的参数传到应用程序中
//此对象有且仅有一个
QApplication a(argc, argv);
//我们自建的类 Widget(父类是QWidget) 创建一个窗口对象w
Widget w;
//调用窗口对象show()函数进行显示,不然不显示。
w.show();
//程序进入消息循环模式,接受外界信号并处理(相当于死循环)
//代码到这就阻塞了,如果程写在这个下面则没意义
return a.exec();
}
widget.cpp 源文件
#include "widget.h"
#include "ui_widget.h"
Widget::Widget(QWidget *parent) : //构造函数
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this); //启动UI界面
//一般初始化代码写在构造函数里
}
Widget::~Widget() //析构函数
{
delete ui; //释放UI界面
}
命名规范
类名:首字母大写
函数名、变量名:首字母小写
快捷键
注释:ctrl + /
查找:ctrl + f
整行移动:ctrl + shilf+ ↑、↓
自动的对齐:ctrl + ii
同名.h和.cpp切换:F4