在做自定义列表的时候,列表中有一个按钮按下的时候需要在widget中进行处理操作,这里我就想用信号槽函数将这个item的widget和主窗口的widget连接起来,顺便学习了解了两个不同类之间的信号处理问题
先在item的头文件item.h里面创建一个信号
signals:
void send_signal(QString);
然后在列表的按钮按下的函数中
void list_item::button_clicked()
{
emit send_signal(ui->no->text());
}
然后到widget主界面头文件中widget.h创建slot函数
private slots:
void GetSignal(QString num);
然后到widget主界面源文件连接两个信号
list_item* item=new list_item(this);//item对象
connect(item,SIGNAL(del_flower(QString)),this,SLOT(DelSignal(QString)));
void Widget::GetSignal(QString num){
qDebug()<<num;
}
然后信号就传过来了