CFormView中如何弹出CView的视??请指教 如题,就像CView中的新建一样, 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 1. create view m_pSettingsView = new CSettingsView; viewID++; m_pSettingsView->Create(NULL,_T("CSettingsView"),WS_CHILD, rect, m_pMainWnd, viewID, &newContext); m_pSettingsView->SendMessage(WM_INITIALUPDATE, 0, 0);2.switch viewCView* CxxxApp::SwitchView(CView* pShowView){ CView* pActiveView = ((CFrameWnd*) m_pMainWnd)->GetActiveView(); CView* pNewView= pShowView; // Exchange view window IDs so RecalcLayout() works.#ifndef _WIN32 UINT temp = ::GetWindowWord(pActiveView->m_hWnd, GWW_ID); ::SetWindowWord(pActiveView->m_hWnd, GWW_ID, ::GetWindowWord(pNewView->m_hWnd, GWW_ID)); ::SetWindowWord(pNewView->m_hWnd, GWW_ID, temp);#else UINT temp = ::GetWindowLong(pActiveView->m_hWnd, GWL_ID); ::SetWindowLong(pActiveView->m_hWnd, GWL_ID, ::GetWindowLong(pNewView->m_hWnd, GWL_ID)); ::SetWindowLong(pNewView->m_hWnd, GWL_ID, temp);#endif pActiveView->ShowWindow(SW_HIDE); pNewView->ShowWindow(SW_SHOW); ((CFrameWnd*) m_pMainWnd)->SetActiveView(pNewView); ((CFrameWnd*) m_pMainWnd)->RecalcLayout(); pNewView->Invalidate(); return pActiveView;} 请问上述程序中的m_pSettingView是什么类型呢,那个SwitemView是个自定义的函数吧,在上面怎么没有调用呢,请指教 看到 masterz了~~动态创建。然后给他传递WM_INITIALUPDATE消息。使他active,并重新计算frmwnd大小。 winpcap不能发分片TCP包问题 用SendMessage出问题了!!!谢谢解答 菜鸟请教在VC下开发数据库应用程序,一般用什么控件能比较方便的实现数据库的增,删,改? 为什么我照书上说的尝试着建立几个控件,编译通过后,却显示空白的白板啊?我建的控件界面哪去了 无法终结线程 看《C++ Primer》的人请注意 Drag&Drop求助 求助:急需可进行中英文翻译的控件。 如何获取进程启动的事件 服务端组件可不可以包含vb中的picturebox? 如何在classwizard中添加一个新类而不用选择一个基类 关闭socket问题
m_pSettingsView = new CSettingsView;
viewID++;
m_pSettingsView->Create(NULL,_T("CSettingsView"),WS_CHILD, rect, m_pMainWnd, viewID, &newContext);
m_pSettingsView->SendMessage(WM_INITIALUPDATE, 0, 0);
2.switch view
CView* CxxxApp::SwitchView(CView* pShowView)
{
CView* pActiveView =
((CFrameWnd*) m_pMainWnd)->GetActiveView();
CView* pNewView= pShowView;
// Exchange view window IDs so RecalcLayout() works.
#ifndef _WIN32
UINT temp = ::GetWindowWord(pActiveView->m_hWnd, GWW_ID);
::SetWindowWord(pActiveView->m_hWnd, GWW_ID, ::GetWindowWord(pNewView->m_hWnd, GWW_ID));
::SetWindowWord(pNewView->m_hWnd, GWW_ID, temp);
#else
UINT temp = ::GetWindowLong(pActiveView->m_hWnd, GWL_ID);
::SetWindowLong(pActiveView->m_hWnd, GWL_ID, ::GetWindowLong(pNewView->m_hWnd, GWL_ID));
::SetWindowLong(pNewView->m_hWnd, GWL_ID, temp);
#endif pActiveView->ShowWindow(SW_HIDE);
pNewView->ShowWindow(SW_SHOW);
((CFrameWnd*) m_pMainWnd)->SetActiveView(pNewView);
((CFrameWnd*) m_pMainWnd)->RecalcLayout();
pNewView->Invalidate();
return pActiveView;
}
在上面怎么没有调用呢,请指教
动态创建。然后给他传递WM_INITIALUPDATE消息。使他active,并重新计算frmwnd大小。