qt简单入门

qt入门

1.首先我们先创建一个qt的空项目

1.这会生成两个文件

xx.pro

xx.pro.user

xx.pro文件是qt的工程文件,有点类似于vc的prj文件,或者sln文件。xx.pro.user是这个当前环境下的工程文件。(移植的时候这个文件没啥用)

以下是标准的hello world入门程序

  1. #include <QApplication>  
  2. #include <QWidget>  
  3.   
  4. int main(int argc,char* argv[])  
  5. {  
  6.     QApplication app(argc,argv);  
  7.     QWidget w;  
  8.     w.setWindowTitle("hello world");  
  9.     w.show();  
  10.     return app.exec();  
  11. }  

然后在xx.pro那里加上QT += widgets gui 

代码解释

1.QApplication是应用程序抽象类,而QWidget是窗口抽象类。

2.app.exec();中有一个消息循环。


下一步:向这个窗口中导入一个按钮

先引入头文件:

#include<QPushButton>

然后在w.show();前加入代码

QPushButton button;
button.setText("button");
button.setParent(&w);

那个w是button的父对象,而不是父类

按钮和其它的控件都是窗口,继承至QWidget。

然后窗口对象的父子关系,影响着显示。


下一步:给按钮添加响应

QObject::connect(&button,SIGNAL(clicked(bool)),&w,SLOT(close()));

其中第一个参数(这里是button),必须是QObject类,然后第二个参数和第四个参数是char*,通过SIGNAL(信号),SLOT(槽)这两个宏定义把clicked,以及close()装换成char*.


全部代码

  1. /* 应用程序抽象类 */  
  2. #include <QApplication>  
  3.   
  4. /*窗口类*/  
  5. #include <QWidget>  
  6.   
  7. /* 按钮 */  
  8. #include <QPushButton>  
  9.   
  10. int main(int argc, char* argv[])  
  11. {  
  12.     QApplication app(argc, argv);  
  13.   
  14.     /* 构造一个窗口*/  
  15.     QWidget w;  
  16.   
  17.     /*显示窗口*/  
  18.     w.show();  
  19.   
  20.     /* 按钮也是个窗口 */  
  21.     QPushButton button;  
  22.     button.setText("Button");  
  23.     /* 窗口对象的父子关系,影响显示位置 */  
  24.     /* 没有父窗口的窗口,我们称之为主窗口 */  
  25.     button.setParent(&w);  
  26.     button.show();  
  27.   
  28.     /* QT对C++的拓展 */  
  29.     // std::bind std::function  
  30.     QObject::connect(&button, SIGNAL(clicked()), &w, SLOT(close()));  
  31.   
  32.     w.setWindowTitle("Hello World");  
  33.   
  34.     /*在exec中有一个消息循环*/  
  35.     return app.exec();  
  36. }  

结果显示

 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值