我正在使用Qt 5.9。Qt 5.9插槽命名错误
我在使用下划线样式声明插槽时遇到了问题,特别是当我用多于2个下划线命名插槽时。例如对于void on_stop_treatment()
插槽,即使我没有建立连接,我也会得到QMetaObject::connectSlotsByName: No matching signal for on_stop_treatment()
。
无论如何,建立连接,即使我得到相同的消息,插槽信号机制的作品。删除第二个下划线我得到没有错误消息,并且该机制起作用。 (我也尝试删除MOC文件和重建)
可能重复的[QMetaObject :: connectSlotsByName:没有匹配信号](https://stackoverflow.com/questions/24355023/qmetaobjectconnectslotsbyname-no-matching-signal) – eyllanesc
这不是一个错误,moc连接一些创建的插槽通过Qt Designer使用方法[connectSlotsByName](http://doc.qt.io/qt-5/qmetaobject.html#connectSlotsByName),该方法将尝试连接格式为“on_
但我从你的答案理解,我应该得到QMetaObject :: connectSlotsByName:没有匹配的信号停止(),而不是QMetaObject :: connectSlotsByName:没有匹配信号on_stop_treatment() –