Qt中的ui指针和this指针-创新互联

【本博客中关于C++和QT,无特别说明开发环境为:Visual studio 2013,QT为5.9.9,特此说明,谨慎参考,希望能帮助到爱好者!】

成都创新互联-专业网站定制、快速模板网站建设、高性价比通辽网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式通辽网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖通辽地区。费用合理售后完善,10余年实体公司更值得信赖。

首先看ui指针的定义:

在mainwindow.h中

private:

Ui::MainWindow *ui;

Ui又是什么?

在mainwindow.h

namespace Ui {

  class MainWindow;

}

本体是ui_mainwindow.h中:

namespace Ui {

class MainWindow: public Ui_MainWindow {};

} // namespace Ui

就是说Ui域中的MainWindow是完全继承自类Ui_MainWindow,而类Ui_MainWindow是关联qtdesigner的,.ui文件中的实现和类Ui_MainWindow密不可分。

再看*ui ,他是一个指向Ui域中MainWindow的指针,可以访问qtdesigner中的控件等元素,他本身是非Ui域中的MainWindow的一个成员指针变量。

然后是this:

非Ui域中的MainWindow是继承自QMainWindow的,他的构造是这样:

MainWindow::MainWindow(QWidget *parent) :QMainWindow(parent),ui(new Ui::MainWindow)

{

ui->setupUi(this);

}

this指向非Ui域中的MainWindow的一个对象,所以可以说this->ui

你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧


文章标题:Qt中的ui指针和this指针-创新互联
分享网址:http://scyanting.com/article/coisse.html