QT 分割窗口,并用dialog填充分割的子窗口
2017-03-17 16:27
351 查看
网上很多QSplitter的例子都是分割完的子窗口带一个edit控件,list控件,可项目需要子窗口用已有dialog进行填充,并能自由切换,遇到最郁闷的问题是填充完后自定义的dialog不能充满整个分割子窗口,现记录下解决方案:
QSplitter* mainSplitter;
QMainWindow * mainQw;
pFrm = new frmFiSetDlg();
mainSplitter = new QSplitter(Qt::Horizontal);
mainSplitter->addWidget(pFrm);
mainQw = new QMainWindow(this);
mainSplitter->addWidget(mainQw);
mainSplitter->setStretchFactor(1, 1);
setCentralWidget(mainSplitter);
QSplitterHandle *splitterHandle = mainSplitter->handle(1);
if(splitterHandle)
{
//Disable the Middle Line, it can't adjust.
splitterHandle->setDisabled(true);
}
m_pDlgObj = new frmMainDlg(mainQw)//需要进行切换的dialog
setWindowFlags(Qt::CustomizeWindowHint|Qt::FramelessWindowHint);//frmMainDlg构造函数中填加
//最重要的处理,让dialog填充满分割子窗口
if(m_pDlgObj != NULL && !m_pDlgObj->isHidden())
{
mainQw->takeCentralWidget();
m_pDlgObj->hide();
}
if (m_pDlgObj != NULL)
{
mainQw->setCentralWidget(m_pDlgObj);
m_pDlgObj->show();
}
相关文章推荐
- Qt使用QSplitter实现分割窗口
- 怎样在一个一般窗口或是Dialog上面使用分割窗口.
- 自学QT之实现窗口分割QSplitter的使用
- 【Qt】之 Splitter分割窗口
- Qt使用QSplitter实现分割窗口
- Qt学习——分割窗口QSplitter类 .
- Qt分割窗口
- 自学QT之实现窗口分割QSplitter的使用
- Qt自定义的无边框Dialog 在点击其他窗口时处理闪烁效果
- QT5布局管理——分割窗口QSplitter类
- 【Qt】之 Splitter分割窗口
- Qt布局管理: 分割窗口QSplitter类讲解(纯代码实现分割窗口)
- qt QSplitter分割窗口
- 2.关于QT中的Dialog(模态窗口),文件选择器,颜色选择器,字体选择器,消息提示窗口
- qt里窗口 2*3分割
- Qt使用QSplitter实现分割窗口
- qt QSplitter分割窗口
- 2.关于QT中的Dialog(模态窗口),文件选择器,颜色选择器,字体选择器,消息提示窗口
- Qt Splitter 分裂器(窗口分割)研究笔记
- Qt创建分割窗口