NO.2.QT_UI使用

 

QT_UI的使用方法分为直接使用,单一继承,多继承三种方式,在vs2008生成的默认文件中使用单一继承方式,故对这种方式进行说明。

建立Qt_Application project->QWidget(name:widget)会生成From Files/widget.ui, Generated Files/ui_widget.h, Header Files/widget.h, Source Files/widget.cpp四个对ui使用有直接关系的文件。下面对其一一分析:

首先是widget.ui文件,如果用文本形式打开可看到其为xml形式,我们可用qt自带软件Designer对其进行图形化的编辑,具体使用可看此软件的help,有详细说明。现对ui进行一定修改(如增加一个pushbutton),之后保存。现在运行main.cpp可以看到窗口中已经实现了对ui的修改。

之后分析对ui修改代码的来源->Generated Files/ui_widget.h。这个文件在对project的编译过程中自动生成了实现ui效果的代码,但是如何来提取里面的pushButton使用?

接下来需要看Header Files/widget.h, 这个文件中可以看#include”ui_widget.h”,在class中有,Ui::weigetClass ui;对这个类的声明,在对应的Source Files/widget.cpp可以看到在class的构造函数中调用了ui.setupUi();这个函数,返回 Generated Files /ui_widget.h可以知道,正是这个函数完成了对.ui文件描述的界面进行初始化与基本功能完成。

现在,对UI文件生成构造已经有一个初步了解,那么如何去使用这个ui中的控件呢?

实际上很简单,我们可以观察到Generated Files/ui_widget.h 中的所有对象与函数均为public ,因此在使用时可以直接在Header Files/widget.h, Source Files/widget.cpp 中通过如ui.pushButton 进行调用。

当然,qt可以直接用代码写出ui界面,但是Designer大大减少了对界面设计的难度,并且可以通过层叠样式表进行对页面的设计,使设计变得简单友好,因此ui的使用仍是qt不可替代的一部分元素。

你可能感兴趣的:(UI,qt,vs2008,可视化)