如何在MDI程序中知道打开的子窗口个数?

cuif1979 2002-05-07 09:25:18
谢谢!
...全文
69 7 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
cuif1979 2002-05-07
  • 打赏
  • 举报
回复
再问一下,这个静态变量放在那里可以初始化,以及还要什么条件.

这个地方不是很熟.谢谢!!!
yu_hl 2002-05-07
  • 打赏
  • 举报
回复
放在CWinApp类里比较合适。
为app类增加一个函数,把这段代码放进去。

其实也可以在CChildFrm中设置一个静态成员变量,在构造函数里++,析构函数里--,自然就计数了。
cuif1979 2002-05-07
  • 打赏
  • 举报
回复
不好意思,再问一下,你的这些代码应该放在那个成员函数里面,
如果我想在每次关闭一个子窗口时,都执行的话.
要调用那些.H文件.
yu_hl 2002-05-07
  • 打赏
  • 举报
回复
嘿,写错了。
pDoc->GetNextView(posView);
把前面一段去掉。
cuif1979 2002-05-07
  • 打赏
  • 举报
回复
编译不通过啊!
posView = pDoc->GetNextView(posView);这句话不行啊

你这个在那个类里面可以调用的?

LegerWu 2002-05-07
  • 打赏
  • 举报
回复
楼上的说得有道理,这样做肯定是可以得到对应所有文档的视图的个数的.
yu_hl 2002-05-07
  • 打赏
  • 举报
回复
这样试试:

int count = 0;
POSITION posTemplate = GetFirstDocTemplatePosition();
while(posTemplate)
{
CDocTemplate * pTemplate = GetNextDocTemplate(posTemplate);
POSITION posDoc = pTemplate->GetFirstDocPosition();
while(posDoc)
{
CDocument * pDoc = pTemplate->GetNextDoc(posDoc);
POSITION posView = pDoc->GetFirstViewPosition();
while(posView)
{
count++;
posView = pDoc->GetNextView(posView);
}
}
}

16,548

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • AIGC Browser
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

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