Qt学习笔记之信号与槽

前述:   信号与槽是Qt学习的一个难点,这里仅写一些我的个人理解,希望对他人也有所帮助。

一、信号与槽简述

       首先,信号与槽都是函数,不过一个是触发式的,一个是执行式的。

       其次,信号与槽用于两个对象的通信(有可能是自己的一部分和自己整个显示通信)

       譬如:登录界面的取消键 一旦”我“被点击(信号函数),整个界面就要执行关闭(槽函数)

二、两种操作手段构建信号与槽机制

  1 . connect函数与disconnect函数

      (1)规范:

               依次:发出信号的对象,也可以说受外界事件影响的主体 若为界面控件,使用界面指针ui->进行调用

                      对象1发出的信号函数【可以是点击、改变文本框输入内容等等,往往是系统提供的】

                      接收信号做出响应的对象2

                       这个响应究竟做了什么操作(槽函数)【可以是输出、关闭、变量大小变化等等,往往是自己可以更改确定的】

               代码示例:

                     connect(ui->btn_sign,SIGNAL(clicked(bool)),this,SLOT(login()));

               注意:信号函数的SIGNAL 和槽函数的SLOT

                         槽函数在头文件中声明时要加 private slots 权限 具体实现写在. cpp文件

      (2)断开这种链接也非常简单

               disconnect(谁,发出了什么信号,谁,执行了什么操作)即可




     2 .   在ui界面选择控件,选择转到槽,选择一个信号函数,

            Qt会自动生成cpp的槽函数,只需填入函数体就好

            链接关系系统是自动绑定的。

             


                

猜你喜欢

转载自blog.csdn.net/qq_40070622/article/details/80994977