zoukankan      html  css  js  c++  java
  • 命令行执行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()的值。

  • 相关阅读:
    Permession denied error when use supervisorctl
    alembic 迁移数据库
    Linux VIM常用命令
    AWS EC2 install supervisor
    第一次编程作业
    (转)ubuntu 12 04下安装JDK7
    (转)Java程序利用main函数中args参数实现参数的传递
    Nvidia CUDA 6 Installed In Ubuntu 12.04
    (转)Java程序利用main函数中args参数实现参数的传递
    (转)JAVA路径问题及命令行编译运行基础(linux下)
  • 原文地址:https://www.cnblogs.com/shine-yr/p/5214753.html
Copyright © 2011-2022 走看看