MFC 子窗体无法刷新,是怎么回事 150
我用MFC自己弄了一个窗口,在窗口里面用一个选项卡,选项卡里面,有一个子窗体,用于摆放我的软件功能,通过选项卡可以选择不同页面的,但是,我是用一个主窗体来载入另一个子窗体...
我用MFC 自己弄了一个窗口,在窗口里面用一个选项卡,选项卡里面,有一个子窗体,用于摆放我的软件功能,通过选项卡可以选择不同页面的,但是,我是用一个主窗体来载入另一个子窗体,子窗体里面才是有我的选项卡和那些要编写的功能,现在问题出现了,这个载入进来的窗口可以显示, 选项卡也正常,但是选项卡里面的窗口就无法显示了,我提供代码给大家看看
int CDialog_MainWindow::OnInitWindowSet(void)
{
CTabCtrl *pTab=(CTabCtrl*)GetDlgItem(IDC_TAB_Main);
pTab->InsertItem(0,_T("数据设定"));
pTab->InsertItem(1,_T("其他设置"));
//-----------创建窗口
dlg_dataset.Create(IDD_DIALOG_Main,this);
//----------设置父类
dlg_dataset.SetParent(pTab); //设置父类后,创建出来的窗口就消失了,如果屏蔽掉,他就正常出现,但是并没有嵌入在选项卡里面 ,
//-----------设置边距
CRect r1,r2;
pTab->GetWindowRect(&r2);
r1.top = r2.top+30;
r1.bottom = r2.bottom;
r1.left = r2.left;
r1.right = r2.right;
dlg_dataset.MoveWindow(&r1);
//------------默认显示
dlg_dataset.ShowWindow(SW_SHOW);
return 0;
}
//---------------
我想请问一下,如何设置才能让选项卡里面的窗口显示出来,我在百度上查阅了一天,我想的应该是刷新问题,或者是层次关系,但是我也不好弄,麻烦帮忙看一下,解决了,在加分,谢谢 展开
int CDialog_MainWindow::OnInitWindowSet(void)
{
CTabCtrl *pTab=(CTabCtrl*)GetDlgItem(IDC_TAB_Main);
pTab->InsertItem(0,_T("数据设定"));
pTab->InsertItem(1,_T("其他设置"));
//-----------创建窗口
dlg_dataset.Create(IDD_DIALOG_Main,this);
//----------设置父类
dlg_dataset.SetParent(pTab); //设置父类后,创建出来的窗口就消失了,如果屏蔽掉,他就正常出现,但是并没有嵌入在选项卡里面 ,
//-----------设置边距
CRect r1,r2;
pTab->GetWindowRect(&r2);
r1.top = r2.top+30;
r1.bottom = r2.bottom;
r1.left = r2.left;
r1.right = r2.right;
dlg_dataset.MoveWindow(&r1);
//------------默认显示
dlg_dataset.ShowWindow(SW_SHOW);
return 0;
}
//---------------
我想请问一下,如何设置才能让选项卡里面的窗口显示出来,我在百度上查阅了一天,我想的应该是刷新问题,或者是层次关系,但是我也不好弄,麻烦帮忙看一下,解决了,在加分,谢谢 展开
2个回答
展开全部
表示正在学MFC,这方面还没涉及.
在 OnInitDialog()里添加ModifyStyle(0, WS_CLIPCHILDREN);
在 OnSize() 里添加this->RedrawWindow(0,0,RDW_ALLCHILDREN);
我就觉得是这样
你应该采用双缓冲技术绘图
具体的可以上网搜搜
论坛上几乎每天都会有人问类似的问题。
在 OnInitDialog()里添加ModifyStyle(0, WS_CLIPCHILDREN);
在 OnSize() 里添加this->RedrawWindow(0,0,RDW_ALLCHILDREN);
我就觉得是这样
你应该采用双缓冲技术绘图
具体的可以上网搜搜
论坛上几乎每天都会有人问类似的问题。
追问
双缓冲技术? 我就直说简简单单的创建一个子窗体,也不要求什么,而且咋个有点怪,我直接用主窗体,建立一个选项卡,里面放子窗体是没有问题的,但是我用主窗体里面调用子窗体,在子窗体里面放置选项卡,选项卡里面嵌入子窗体,就出问题,这个有办法解决没有
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询