刚新建完的QT项目包含五个文件,分别是:
- main.cpp
- mainwindow.cpp
- mainwindow.h
- mainwindow.ui
- untitled.pro
尝试运行一下这个默认项目,运行的方法如下所示。
运行起来的程序:
是一个标题为MainWindow的空窗体,里面什么也没有。即便如此,这个窗体的代码对于初学者而言依然过于复杂,接下来我们删除掉窗体显示相关代码,只保留QT程序最基本的框架,随后再一点一点向里面填充内容。
删掉除了main.cpp和untitled.pro之外的其他文件。最后整个项目变成这样:
我们看main.cpp,这个文件的初始内容如下:
#include "mainwindow.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); }
下面简单修改一下这个文件,删除掉对mainwindow.h文件的引用和对MainWindow类的实例化相关代码。我们在之前看到的那个标题为MainWindow的窗体实际上就是这个类生成的。删除后的代码如下所示:
#include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); return a.exec(); }
现在看到的就是一个QT程序的最基本框架了。下面我们填充一个按钮到这个QT程序里,让按钮显示Hello World。
#include <QApplication> #include <QPushButton> // QPushButton这个类提供按钮组件 int main(int argc, char *argv[]) { QApplication a(argc, argv); // 实例化一个按钮,这里传给构造函数的值会被设置为按钮显示的文字 // 除此之外还可以通过按钮类提供的setText方法来设置,后面会讲 QPushButton *button = new QPushButton("Hello World"); button->show(); // 调用show方法,显示组件。 return a.exec(); }
之后运行程序就可以看到第一个QT程序跑起来了~他可能很简陋,但战略意义远大于战术意义。
力挺老哥!希望多出点QT相关的笔记,我正想学习呢
别追更了,这个系列差不多挂了,QT写着写着郁闷了,感觉用处不大。日后还是web前端技术大行其道欸,传统的桌面端ui编程会限于只在小范围内应用。