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对象,argc、argv为参数

4)w为QPushButton对象

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

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

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

代码编译:

*.pro项目文件

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

qmake用于生成程序的Makefile

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

最后出现helloworld!!

重点:

信号与槽机制(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));

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值