我写的一个测试QDockWidget界面,源码设计如下:
//隐藏或显示属性视图docking
ui->PropertyView->setCheckable(true);
ui->PropertyView->setChecked(true);
ui->PropertyView->setVisible(true);
connect(ui->PropertyView,SIGNAL(toggled(bool)),this,SLOT(showDeviceDockWiget(bool)));
以上代码是在构造函数中用到的设置视图菜单中“属性视图”项的关键代码,具体不再解释,现在看一下槽函数showDeviceDockWiget(bool):
void FragmentForensicsUI::showDeviceDockWiget(bool show){
m_tabWidget->showDeviceDockWiget(show);
}//end of method showDeviceDockWiget
这个函数很简单,直接调用了另一个类的函数showDeviceDockWiget(bool show),这个函数最终调用的函数为:
void DeviceInfoView::setShowDocking(bool show){
dockWidget->setShown(show);
}//end of method setShowDocking
这个setShowDocking函数就是最终控制docking显示和隐藏的位置。
详细源码上传至http://download.csdn.net/source/2093997
现在问题如下:
1、单击视图->属性视图,这个时候docking为何无法隐藏和显示?
2、参考:同样是菜单响应,单击选显卡内的“测试”菜单内的“控制dock”,却能正常控制docking的显示和隐藏。
请问哪位达人给解决一下问题1,谢谢啦!
解决方案回复到我
QQ 453489997
MSN: yanj_20@hotmail.com