关于Qml ComboBox的问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/k331922164/article/details/73734091

Qml里面的ComboBox控件,触发onCurrentIndexChanged事件是比较正常的。

只不过,每次都要改变index才能触发事件,而在鼠标点击相同的index时,并不触发事件。

更让人崩溃的是,currentIndex不是立即生效。

这个时候,可以利用onPressChanged和onCurrentTextChanged事件,取代onCurrentIndexChanged事件,来完成鼠标点击相同index时,也能触发事件。

源码如下所示:

利用first标志位,可以消除第一次点击就触发onCurrentTextChanged事件。

利用pressedFlag标志位,可以捕捉到第二次点击,才执行doSomeThing()函数。

这个方法,有个限制,就是ComboBox里面的item不能重名。

猜你喜欢

转载自blog.csdn.net/k331922164/article/details/73734091
QML
今日推荐