QT5.12中的信号和槽问题
在使用QT5.9.6版本的时候,使用信号和槽问题没有问题;
connect(m_applyBtn, SIGNAL(pressed()), this, SLOT(onApplyBtnPressedSlt())); connect(m_backBtn, SIGNAL(pressed()), this, SLOT(onBackBtnPressedSlt()));
但是在QT5.12版本中,使用以上的信号和槽命令时,其中的SIGNAL和SLOT从蓝颜色变成了黄颜色,并且在输入SIGNAL()时不能自动带出Pressed或者Clicked命令;
经过查找才发现在QT5.12版本中已经不推荐使用以上的使用方法,推荐使用lambda的表示方式;
个人不喜欢Lambda的标识方式,感觉逻辑关系不清晰;别喷;
后来更改另一种connect的标识方式,就没有问题了,况且能自动带出需要的函数;
connect(m_applyBtn, &myPushButton::clicked, this, &LampCtrl::onApplyBtnPressedSlt); connect(m_backBtn, &myPushButton::clicked, this, &LampCtrl::onBackBtnPressedSlt);
并且在写on函数的时候,一定不要写默认的连接关系:on_m_applyBtn_pressed()
否则将在点击m_applyBtn按键的时候,响应函数将执行两次;
切记;