想自己设计一个DOCKWidget,使他具有自动伸缩的功能,
内部包含几个EDIT和一个QComboBox
重载以下两个方法
void PoppingDockWidget::leaveEvent(QEvent* event)
{
QRect tmp = geometry();
if(isFloating() )
{
setGeometry((tmp.left()+tmp.width()-4),tmp.top(),tmp.width(),tmp.height());//使窗口移动到主窗口的最右边
QWidget::leaveEvent(event);
}
}
void PoppingDockWidget::enterEvent(QEvent* event)
{
QRect tmp = geometry();
if(isFloating())
{
setGeometry((tmp.left()-tmp.width()+4),tmp.top(),tmp.width(),tmp.height());//使窗口回到原来的地方
}
QWidget::enterEvent(event);
}
现在问题是当选择QComboBox中的内容是,窗口就自动隐藏了,不知大家有什么解决方法。
有没有人使用其他方式达到自动伸缩的功能。