📄 chap8_4.htm
字号:
<html>
<head>
<title>8.4访问当前活动视图和活动文档 </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<meta name="GENERATOR" content="Microsoft FrontPage 3.0">
<link rel="stylesheet" href="../../../cpcw.css"></head>
<body link="#3973DE" alink="#3973DE" background="../../bg.gif">
<div align="center"><center>
<table width="85%" border="0">
<tr bgcolor="#FFFFFF">
<td>
<div align="center">
<center>
</center>
</div>
<p align="CENTER"><b><font color="red" face="Times New Roman">8.4</font><font color="red">访问当前活动视图和活动文档
</font></b><font color="#3973DE" size="4"> </font></p>
<p> 对于SDI程序,主框架窗口就是文档框窗,可以采用以下方法取得当前文档和视图:</p>
<p> 取得活动文档:</p>
<p>CMyDocument* pDoc;</p>
<p>pDoc=(CMyDocument*)((CFrameWnd*)AfxGetApp()->m_pMainWnd)</p>
<p>->GetActiveDocument();</p>
<p>或</p>
<p> pDoc=(CMyDocument*)((CFrameWnd*)AfxGetMainWnd());</p>
<p> 这两者是等效的。</p>
<p> 取得活动视图:</p>
<p>CMyView* pView;</p>
<p>pView=(CMyView*)((CFrameWnd*)AfxGetApp()->m_pMainWnd)->GetActiveView();</p>
<p>对于MDI程序,由于子窗口才是文档框窗,因此首先要用GetActiveFrame()取得活动子框架窗口,然后通过该子窗口获取活动文档和视图:</p>
<p>CMDIChildWnd* pChild=(CMDIChildWnd*)((CFrameWnd*)AfxGetApp()->m_pMainWnd)->GetActiveFrame();</p>
<p>取得活动文档:</p>
<p>CMyDocument* pDoc=pChild->GetActiveDocument();</p>
<p>CMyView* pView=(CMyView*)pChild->GetActiveView();</p>
<p>可以把上述函数片段做成静态成员函数,比如:</p>
<p>static CMyDocument::GetCurrentDoc()</p>
<p>{</p>
<p>CMDIChildWnd* pChild=(CMDIChildWnd*)((CFrameWnd*)AfxGetApp()- >m_pMainWnd)->GetActiveFrame();</p>
<p>CMyDocument* pDoc=pChild->GetActiveDocument();</p>
<p>}</p>
<p>这样就可以通过以下方式取得活动文档(或视图):</p>
<p> CMyDocument::GetCurrentDoc();</p>
<p> <b></b><font color="#3973DE">注:静态成员函数调用时不需要一个具体的对象与之相关联。</font></p>
<div align="center">
<center>
<table border="0" cellpadding="0" cellspacing="0" width="615">
<tr>
<td><a href="chap8_3.htm">上一页</a></td>
<td>
<p align="right"><a href="chap8_5.htm">下一页</a>
</td>
</tr>
</table>
<p><a href="http://www.cpcw.com">电脑报首页</a> <a href="../../index.htm">网络学院首页</a></p>
</center>
</div>
<font size="5">
<hr noshade color="#3973DE" size="1">
</font>
<p align="center"><font size="5"></font><font size="2" color="#000000">本教程由<a href="http://vcdynasty.yeah.net">Visual
C++王朝(Where programmers come together)</a>协助制作<br>
未经许可,请勿以任何形式复制</font>
</td>
</tr>
</table>
</center>
</div>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -