gpt4 book ai didi

c++ - MFC 在对话框中找不到 GetDocument()

转载 作者:行者123 更新时间:2023-11-28 06:52:17 24 4
gpt4 key购买 nike

我是 MFC 的新手,我想在对话框中获取一些数据,但这不起作用,

CTestDoc* pDoc=GetDocument();
pDoc->Get(...);

我谷歌了一下,发现 GetDocument() 只在 CView 中使用。所以我尝试了这个,它确实有效:

CMainFrame *pMain=(CMainFrame *)AfxGetApp()->m_pMainWnd; 
CTestView *pView=(CTestView *)pMain->GetActiveView();
m_name=pView->v_name;

但是我认为这不是一个好的解决方案,所以我想知道有什么函数可以解决这个问题吗?谢谢。

最佳答案

您没有说明对话框的作用,但可能希望将此数据传递给对话框,而不是让对话框直接访问文档数据。这有助于使您的对话更加独立,并且更有可能在其他程序中使用。

我会查看显示对话框的命令。它在 View 中吗?如果是这样,那么您可以传递对话框所需的文档数据。如果没有,那么您发布的代码可能仍然有意义。无论哪种方式,您都应该在此处找到所需的文档信息,然后将其传递给对话框。

如果没有必要,我会避免让您的对话框直接识别文档。

关于c++ - MFC 在对话框中找不到 GetDocument(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23724203/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com