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

2016-03-28  本文已影响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)));

上一篇 下一篇

猜你喜欢

热点阅读