MFC窗口分割后出现卡死现象??

zw565292642 2015-03-19 04:17:31
1.class CMySplitter : public CSplitterWnd

2.CMainFrame中: CMySplitter m_wndsplitter;
3.BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
// TODO: Add your specialized code here and/or call the base class
CRect rect;
GetClientRect(&rect);
m_wndsplitter.CreateStatic(this,2,1);
m_wndsplitter.CreateView(0,0,RUNTIME_CLASS(CMapView),CSize(rect.Width(),483),pContext);
m_wndsplitter.CreateView(1,0,RUNTIME_CLASS(CUnderForm),CSize(rect.Width(),rect.Height()-483),pContext);
return TRUE;/**/
//return CFrameWnd::OnCreateClient(lpcs, pContext);
}
4.运行后出现卡死现象?向想问一下哪边的问题
谢谢
...全文
201 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
challengerhawk 2015-04-10
  • 打赏
  • 举报
回复
好像要在mainframe 里处理下消息传递,让pDOc可以updateallviews 之类的
zhouxiaofeng1021 2015-04-08
  • 打赏
  • 举报
回复
// TODO: 在此添加专用代码和/或调用基类 BOOL boolSplitter = m_wndSpliterWnd.CreateStatic(this, 2, 4); if (boolSplitter) { m_wndSpliterWnd.CreateView(0, 0, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); m_wndSpliterWnd.CreateView(0, 1, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); m_wndSpliterWnd.CreateView(1, 0, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); m_wndSpliterWnd.CreateView(1, 1, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); m_wndSpliterWnd.CreateView(0, 2, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); m_wndSpliterWnd.CreateView(0, 3, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); m_wndSpliterWnd.CreateView(1, 2, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); m_wndSpliterWnd.CreateView(1, 3, RUNTIME_CLASS(CProgressView), CSize(50, 50), pContext); // 默认单窗口显示 if (m_wndSpliterWnd.IsPaneVisible(0, 1)) { m_wndSpliterWnd.HideColumn(1); } if (m_wndSpliterWnd.IsPaneVisible(0, 2)) { m_wndSpliterWnd.HideColumn(2); } if (m_wndSpliterWnd.IsPaneVisible(0, 3)) { m_wndSpliterWnd.HideColumn(3); } if (m_wndSpliterWnd.IsPaneVisible(1, 0)) { m_wndSpliterWnd.HideRow(1); } CProgressView中: afx_msg void OnSize(UINT nType, int cx, int cy); // 重写 public: virtual void OnDraw(CDC* pDC); // 重写以绘制该视图 virtual BOOL PreCreateWindow(CREATESTRUCT& cs); 界面卡死应该是窗口重绘问题吧
zw565292642 2015-04-07
  • 打赏
  • 举报
回复
zw565292642 2015-03-31
  • 打赏
  • 举报
回复
怎么没人回答啊 没遇到过吗
zw565292642 2015-03-19
  • 打赏
  • 举报
回复
引用 1 楼 worldy 的回复:
单文档?多文档?
单文档
worldy 2015-03-19
  • 打赏
  • 举报
回复
单文档?多文档?

15,979

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧