送分题,中秋快乐!欢迎进来!

MicoInNet 2003-09-09 09:44:49
VC中如何在新建中添加代码,我想在新建时打开一个对话框,单击确定,然后实现新建功能,请问我该到哪里添加代码,我在MainFrame::OnFileNew()或者是C**View::OnFileNew()中添加代码,可以弹出对话框,但是没有新建一个视图文档。
...全文
22 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
akiko 2003-09-11
  • 打赏
  • 举报
回复
中秋快乐
MicoInNet 2003-09-11
  • 打赏
  • 举报
回复
谢谢了!
大家中秋节快乐!
yushulei 2003-09-10
  • 打赏
  • 举报
回复
重载app里的OnFileNew();在里面添加如下代码
void CTestApp::OnFileNew()
{
CDlgTest dlg;
dlg.DoModal();

CWinApp::OnFileNew();
}
这样就好了 ,我试过了。
bbgbianbaogui 2003-09-10
  • 打赏
  • 举报
回复
同乐
Viconia 2003-09-10
  • 打赏
  • 举报
回复
呵呵,已经有人解决了,我就进来同乐下吧
ink8852 2003-09-10
  • 打赏
  • 举报
回复
同乐
dzqsuper 2003-09-10
  • 打赏
  • 举报
回复
大家中秋都快快乐乐的过好
coohai 2003-09-10
  • 打赏
  • 举报
回复
在C**App中弹出对话框,再调用CWinApp::OnFileNew();
或者在你的App类中添加函数。
头文件中
public:
void NewFile();
实现文件中
void C**App::NewFile()
{
CWinApp::OnFileNew();
}
然后在你调用对话框后添加
C**App* pApp=(C**App*)AfxGetApp();
pApp->NewFile();
这样就实现了你的想法。
flinming 2003-09-10
  • 打赏
  • 举报
回复
建一个多文档,看看它里面是怎么实现的。。。。。
mqbwx 2003-09-10
  • 打赏
  • 举报
回复
快乐!
思危 2003-09-10
  • 打赏
  • 举报
回复
中秋到了,散分帖子这么多,呵呵
njtu 2003-09-10
  • 打赏
  • 举报
回复
中秋快乐
njtu 2003-09-10
  • 打赏
  • 举报
回复
都中秋节了,不要写代码了吧?

中秋快乐!!!
littlebao 2003-09-10
  • 打赏
  • 举报
回复
up
CViva 2003-09-10
  • 打赏
  • 举报
回复
中秋快乐
coohai 2003-09-10
  • 打赏
  • 举报
回复
没有问题的。关键是有你自己的类替换C**App.
比如你建立了一个自己的工程名为Test,则默认的应用类名为CTestApp,这样你在Test.h中添加函数申明NewFile();
然后在Test.cpp中添加该函数定义。在你的Mainfrm.cpp中有OnFileNew的消息处理函数的话,便在该文件中加一句
#include "Test.h"
再在OnFileNew函数中得到App指针并调用它的该成员函数NewFile();

你若想在应用类中OnFileNew(),并且启动时不调用该对话框,则应在该类中增一变量bOn表明还未启动或已经启动,可在构造函数中初始化bOn=0;在InitilInstance()的末尾添加一句bOn=1.
然后再在OnFileNew()中判断if(bOn==1)则调用对话框。
vesky 2003-09-10
  • 打赏
  • 举报
回复
同乐!
mediapump 2003-09-10
  • 打赏
  • 举报
回复
直接用多文档的呀!
lyrzhlgq 2003-09-10
  • 打赏
  • 举报
回复
快乐
MicoInNet 2003-09-10
  • 打赏
  • 举报
回复
void CTestApp::OnFileNew()
{
CDlgTest dlg;
if(dlg.DoModal()==IDOK)
CWinApp::OnFileNew();
}
在App中重载OnFileNew()函数只能是在运行程序时弹出对话框。
我的想法是:打开程序时不去打开对话框,而是在单击“新建”菜单时弹出对话框。
VC中调用函数的顺序是:运行程序时调用C**App的OnFileNew;单击“新建”菜单时,调用MainFrame::OnFileNew();
我在MainFrame::OnFileNew()中:用 coohai(海) 的方法,会出现错误(cannot convert from 'class CWinApp' to 'class C**App')无论在MainFrame还是在dialog中添加代码都会出现这个错误。各位大虾请指教。

16,472

社区成员

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

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

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