Qt信号和槽

    科技2025-11-09  10

    Qt5信号和槽

    1.connect和slot

    (1)语法:connect(信号的发送者,发送的具体信号(signal), 信号的接受者,信号的处理(solt));

        disconnect() ;断开信号

    (2)信号槽的优点:松散耦合,信号的接收端和发送端是没有关联的,通过connect连接,将两端耦合在一起。

    (3)当自定义的信号和槽出现重载:需要利用函数指针明确指向函数的地址。

             如:void(Teacher::*tsignal)(Qstring) =& Teacher::hungry;

    (4)qt字符串转字符显示,即:Qstring->char *

             先使用.ToUtf8()转为QBtyeAarray,再使用.Date()转为char*

    2.理解

    (1)信号可以连接信号,第二个信号再去连接其他槽函数

    (2)一个信号可以连接多个槽函数

    (3)多个信号可以连接同一个槽函数

    (4)信号和槽函数的参数类型必须一一对应,信号的参数个数可以多于槽函数的参数个数(反之不成立)。

    3.qt4版本的信号和槽的连接方式

    语法:connect(信号的发送者,发送的信号SINGAL(信号),信号的接受者,槽函数SLOT(槽函数));

    connect(zt,SIGNAL(hungry()),st,SLOT(treat()));

    优点:参数直观,缺点:类型不做检测。

     

     

     

    Processed: 0.015, SQL: 8