学习记录不断更新
我使用的Qt 5.3.1 creator (MinGW 4.8 (32-bit))
ui文件,继承的是什么类型,ui文件名暂定:serialwidget.ui,如果不知道ui文件继承的类型,可以在下面"使用过程"中,ui生成的头文件ui_serialwidget.h中找到
void setupUi(QWidget *serialWidget) //这里使用的是 QWidget
namespace Ui {class serial1Widget: public Ui_serial1Widget {};//class之后的是类名,"1使用过程"中 c.步中会用到
别人直接给你一个ui文件,如何使用(网上有3种方式,可以百度到)我直接使用的是单继承的方式,并且用的是指针成员变量
使用过程:
a.先把ui文件放入你的代码文件夹中,然后在工程项目下添加ui文件,并且点击creator左小角锤子或者ctrl+b进行编译,会在debug或者release中出现ui_serialwidget.h
b.在项目文件中添加C++类文件,设置文件名和基类(和给予ui一样),个人建议文件名最好和ui文件名一样,这里我设置文件名为serial
c.在serial.h中 "//新添"都是需要添加的
namespace Ui{ //添加内容
class serialWidget; //添加 class之后是ui_serialwidget.h中的类名}
class serial : public QWidget
{
Q_OBJECT
public:
explicit serial(QWidget *parent = 0);
~serial(); //添加 析构函数
signals:
public slots:
private:
Ui::serial1Widget *ui;d.在serial.cpp中 "//添加"都是需要添加的
#include "serial.h"
#include "ui_serial1widget.h" //添加ui头文件
serial::serial(QWidget *parent) :
QWidget(parent),
ui(new Ui::serial1Widget) //添加
{
ui->setupUi(this); //添加
}
serial::~serial() //添加
{
delete ui;
}
e.显示窗口
添加 #include "serial.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
serial *ser = new serial();
ser->show();
return a.exec();
}