美文网首页
QCombobox 使用clear()后,再使用addItem(

QCombobox 使用clear()后,再使用addItem(

作者: 厝弧 | 来源:发表于2016-03-28 16:58 被阅读0次

       在使用QComboBox调用clear()方法来清除下拉选项,确无缘无故的崩溃了,调试到QComboBox调用clear()方法这一语句时崩溃的,很诡异。

      经过资料查找和分析,得出错误处,在以前调用clear()方法时没有问题,但加入了connect(qcombobox, SIGNAL(currentIndexChanged(int)), this, SLOT(OnComboIndexChanged(int)));这句时,此时再调用clear()方法,就会崩溃。

解决办法是在调用clear()方法时先调用disconnect(qcombobox, SIGNAL(currentIndexChanged(int)), this, SLOT(OnComboIndexChanged(int)));

在调用完clear()方法后再次调用

connect(qcombobox, SIGNAL(currentIndexChanged(int)), this, SLOT(OnComboIndexChanged(int)));

相关文章

网友评论

      本文标题:QCombobox 使用clear()后,再使用addItem(

      本文链接:https://www.haomeiwen.com/subject/obijlttx.html