初识QT2

一、添加一个按钮

1、包含按钮的头文件:#include<QPushButton>

2、创建按钮的对象:QPushButtonbutton;

3、设置按钮显示内容:

       可以有两种方式设置:

1、 创建对象的时候直接设置:QPushButtonbutton("Button");

2、 通过内部成员函数设置:

4、设置对象的父子关系,将当前窗口对象设置为该button的父对象:

              button.setParent(&w);

 

注意;
       1、父子关系说的是什么对象的父子关系,不是类的父子关系

       2、窗口的show()的前后顺序不同,显示会不一样。

二、父子对象关系

父子关系影响显示位置

没有父对象的窗口,叫主窗口。

2.6按钮的事件响应:信号与槽机制(Signal&Slot)

QT提供信号与槽的机制,来让任意两个对象之间进行消息处理。作用就是让一个对象产生的信号能够被另一个对象接受并处理。

QT基本所有的对象都继承QObject对象,在这个对象中有一个静态函数connect(..),这个函数可以让一个对象产生的信号能够被另一个对象接受并处理。

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

第一个参数:要发送消息的对象(一定要是QObject子类对象),这里为按钮对象button

第二个参数:要发送的信号,用SIGNAL宏将其转化为char*类型,这里为button的点击事件

第三个参数:接收信号的对象(也是QObject子类对象),这里是窗口对象w

第四个参数:接收信号的处理方式,用SLOT将其转化为char*类型,这里为窗口对象的槽函数close

 

前两个参数称为信号,后两个参数称为槽。经过这样的连接之后,按钮button的clicked函数和窗口w的close函数就进行了绑定,调用button的clicked函数就相当于调用了窗口对象w的close函数。 这种方式的好处是将两个独立的模块,可以通过第三方连接起来,降低了设计的耦合性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值