怎样得到对话框中view的句柄?

来源:百度知道 编辑:UC知道 时间:2024/05/04 16:29:22
是在对框中显示的view ,在dialog的OnInitDialog() 里是这样定义的:
BOOL CInterface_1Dlg::OnInitDialog()
{
CDialog::OnInitDialog();
CFrameWnd* pFrameWnd = new CFrameWnd();
CRect rec;
GetDlgItem(IDC_VIEW_ADGE)->GetWindowRect(rec);
ScreenToClient(rec);
pFrameWnd->Create(NULL,NULL,WS_VISIBLE|WS_CHILD,rec,this);

CCreateContext cc;
cc.m_pCurrentDoc = new CMyDocumentEx();
cc.m_pNewViewClass = RUNTIME_CLASS(CMyViewEx);

CMyViewEx *pView=(CMyViewEx *)((CFrameWnd*)pFrameWnd)->CreateView(&cc);
pView->UpdateWindow();
return TRUE;
}

因为想用sendmessage向这个view发送消息,更新view的图象,怎么获得这个view的句柄呢? 谢谢!

在对话框类 CInterface_1Dlg 中添加一个指针成员。
CMyViewEx* m_pView;

然后在上面的代码最后修改为:
CMyViewEx *pView=(CMyViewEx *)((CFrameWnd*)pFrameWnd)->CreateView(&cc);
pView->UpdateWindow();
m_pView= pView;
return TRUE;

要使用 sendmessage;
就可以用 m_pView->sendmessage(....
就行了