QT入门笔记之Hello World

 

先看代码:

#include<QtGui/QApplication>

#include<QPushButton>

int main(int argc, char *argv[])

{

   QApplication app(argc, argv);

   QPushButton w("hello world!!");

   w.show();

   QObject::connect(&w,SIGNAL(clicked()),&app,SLOT(quit()));

   return app.exec();

}


代码解析:

1)  Qt图形化应用程序必要的头文件<QApplication>

2)  Qt按钮控件头文件<QpushButton>

3)  每个Qt应用程序都有且只有一个QApplication 对象,argcargv为参数

4)  w QPushButton 对象

5)  Show()显示w里面的内容

6)  QObject::connect为信号与槽的机制,当按钮被按下则触发clicked()信号发射,

与之相连的app的槽quit()相应按钮信号,执行退出应用程序的操作。

代码编译:

*.pro 项目文件

 qmake -project 用于生成程序的项目文件

 qmake 用于生成程序的Makefile

 make 用于编译Makefile文件得到可执行文件

最后出现hello world!!

重点:

信号与槽机制(signal&slot)

提供了任意两个Qt对象之前的通信机制。信号会在某个特定情况或动作下被触发,槽是用于接收并处理信号的函数。例如:要将一个窗口的变化情况通知另一个窗口,则一个窗口发送信号,另一个窗口的槽接收到此信号并进行相应的操作,即可实现两个窗口之间的通信。

 

常用连接方式:

Connect(Object1,SIGNAL(signal), Object2, SLOT(slot));

SIGNAL为对象Object1的信号

SLOT为对象Object2的槽

 

多种连接方式:

1)一个信号可以连接另一个信号

Connect(Object1,SIGNAL(signal), Object2, SIGNAL(signal));

表示对象Object1的信号signal可以触发Object2的信号signal发射

 

2)同一个信号可以与多个槽相连接

Connect(Object1,SIGNAL(signa2), Object2, SLOT(slot1));

Connect(Object1,SIGNAL(signa2), Object3, SLOT(slot2));

 

3)同一个槽可以响应多个信号

Connect(Object1,SIGNAL(signa2), Object2, SLOT(slot2));

Connect(Object3,SIGNAL(signa2), Object2, SLOT(slot2));

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值