先说QTabWidget。

如图所示:
切换标签Tab2时,会响应currentChanged这个槽响应。
我的问题是这样的:我在Tab1页面正在做一些事情,在没有做完的时候,切换标签页的话,会造成我Tab1页面一些混乱,那么我希望切换Tab2之前,也就是响应currentChanged之前,调用一个函数将我Tab1的事情强制处理完,这样就可以顺利切换到Tab2而不发生错乱。但QTabWidget本身只有currentChanged这种切换后的响应,在它内部做处理的话其实已经晚了。
那么我该如何响应切换标签页之前的事情???
=========================================
另外再问个QComboBox的问题,下拉框怎么响应点击本身收回下拉框的事件?如图我在一个TableWidget的表格中加载了一个下拉框,

双击会显示出它,当我选择一个选项或者是单击表格其它区域的时候,会将其隐藏恢复到第一幅图那样。

现在的问题时,如果我双击后出现下拉框,不选择选项,再次单击下拉框的话,那么这个下拉框收回后不会消失。如图:

原因是因为我用的是QComboBox的activated槽进行的响应,而这个槽是不能够响应不选择选项却收回下拉框的事件的。所以我没法处理让它关闭的调用。
那么我该怎样才能处理下拉框不选择选项、仅仅点击自身收回下拉列表的事件呢???似乎本身的槽函数中没有这样的处理???
------解决思路----------------------
QTabWidget
如果你是要在tab2出现之前处理完tab1,可以用hideEvent
你说的QComboBox双击才出现,我试了下,单击就显示下列选项了,双击的话只是快速地显示和隐藏并没有你说的情况
------解决思路----------------------
可以重写hidePopup
void ComboBox::hidePopup()
{
hide();
QComboBox::hidePopup();
}
------解决思路----------------------
第个tab里面应该有一个widget的,重写此widget的hideEvent
qcombobox 的信号 activated(int) 还是正常的啊