命令行执行Qt程序

原文网址

//helloworld.cpp
#include <QApplication>
#include <QPushButton>

int main(int argc,char *argv[])
{
    QApplication app(argc,argv);
    QPushButton btn("hello world!");
    btn.show();
    QObject::connect(&btn,SINGAL(clicked()),&app,SLOT(quit()));
    return app.exec();
}

Qt程序编译运行很简单,利用Qt提供的qmake工具可以很好的进行编译,在命令行输入一下编译过程:
qmake -project //声称项目文件(*.pro)
qmake //生成Makefile文件
make //生成可执行文件
./helloworld //执行程序

执行程序的结果为:
显示一个窗口,窗口中有一个hellosworld标签。点击helloworld标签后将退出程序.

下面就来仔细讲一下这个程序:
第一行,所有的Qt图形应用程序都必须包含此文件。它包含了Qt图形化应用程序的各种资源、基本设置、控制流、以及事件处理等。

第二行包含了程序中的按钮控件的头文件

第三行为应用程序的入口,所有Qt程序都必须有一个main()函数,以argc和argv作为入口参数
第四行创建了一个QApplication对象,每个程序都必须有且只有一个QApplication对象、采用
argc和argv作为参数、以便对命令行参数进行处理

第五行创建了一个QPushButton对象并且设置它的文本为”hello world”,由于此处没有指定按钮的父
窗体,因此以自己作为主窗口

第六行调用控件对象的show()方法来显示此按钮。控件被创建时默认是不显示的,因此调用show()函数来
进行显示。

第七行QObject::connect()方法是Qt的重要特征。即信号和槽机制。当按钮被按下则触发clicked()信号的发射,与之相连的QApplication对象的quit()响应按钮信号,执行退出操作。

第八行调用QApplication的exec()方法,程序进入消息循环,等待可能输入进行相应。Qt完成事件处
理及显示的工作,并在应用程序退出是返回exec()的值。

你可能感兴趣的:(C语言,qt)