向导生成的About对话框,为什么我调不起来

superlight 2002-03-12 02:18:19
1。向导生成框架后, C***App里有OnAppAbout
在这里创建是可以的,其实也是向导生成的代码
CAboutDlg aboutDlg;
aboutDlg.DoModal();
2。我在CMainFrame::OnHello()中调用
{
CAboutDlg aDlg;
aDlg.DoModal();
}
编译时提示CAboutDlg没定义;
3。我在CMainFrame::OnHello()中调用
{
CDialog aDlg(IDD_ABOUTBOX,this);
aDlg.DoModal();
}
编译通过,但我在CAboutDlg里有处理代码,这样调用就没有处理了

请问如何解决?
...全文
52 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
superlight 2002-03-12
  • 打赏
  • 举报
回复
结了
superlight 2002-03-12
  • 打赏
  • 举报
回复
to chenzhou35
别见笑,我是初学没多久的
superlight 2002-03-12
  • 打赏
  • 举报
回复
我期望的是用include来解决
但是不要把cpp里的CAppAbout的定义拷贝到一个h里,这样太烦了
我希望就是include "***.app"来解决
chenzhou35 2002-03-12
  • 打赏
  • 举报
回复
gz
superlight 2002-03-12
  • 打赏
  • 举报
回复
to mahongxi(烤鸡翅膀)(0.618)
是我的代码有错,你说的是对的
AttaBoy 2002-03-12
  • 打赏
  • 举报
回复
是啊,你这样当然不会处理了,包含头文件就行了
superlight 2002-03-12
  • 打赏
  • 举报
回复
TO :chenzhou35
include cpp文件后编译,出现以下错误
Compiling...
MainFrm.cpp
D:\vcKakon\vcKakon\MainFrm.cpp(15) : error C2370: 'THIS_FILE' : redefinition; different storage class
d:\vckakon\vckakon\vckakon.cpp(12) : see declaration of 'THIS_FILE
prometheusphinx 2002-03-12
  • 打赏
  • 举报
回复
最简单的办法就是把那段定义的代码放到yourapp.h中去。
mahongxi 2002-03-12
  • 打赏
  • 举报
回复
不存在。
mahongxi 2002-03-12
  • 打赏
  • 举报
回复
TO superlight() :
你说的现象在我这里有存在。我在ABOUT对话框中加入一BUTTON,在其CLICK事件中:
MessageBox("OK");

结果可以啊,和正常调用没什么不同。请检查一下你的代码。
chenzhou35 2002-03-12
  • 打赏
  • 举报
回复
一般的CAboutDlg定义在yourApp.cpp中,确实没有头文件。
mahongxi(烤鸡翅膀)(0.618) 所说的是个解决办法。
你也可以把这个Dialog的定义单独放到另外的文件中去。甚至你也可以include *.cpp文件,至少在C下面是可以的,不过这样不太好。你也可以尝试theApp.SendMessage(ID_APP_ABOUT)
superlight 2002-03-12
  • 打赏
  • 举报
回复
to mahongxi(烤鸡翅膀)
你的方法的确能调用
但是有严重错误
我在CAboutApp的对话框里放了一个CButton
点击时显示ok
按找你的方法调用起来后,先要点一下OK,出现了另一个一样的对话框,在点这个CButton才显示OK
而正常在 Help->About里调用的没有问题

superlight 2002-03-12
  • 打赏
  • 举报
回复
TO :CCHENGZHOU35
我没有找到这个类的头文件

to: mahongxi
我不是要这样的处理手段,谢谢
mahongxi 2002-03-12
  • 打赏
  • 举报
回复
这个ABOUTBOX是在CYOUAPP的CPP文件中定义的,你又不能
#include "###.cpp",我的办法也可行啊。
mahongxi 2002-03-12
  • 打赏
  • 举报
回复
void CMainFrame::OnMyhelp()
{
// TODO: Add your command handler code here
CAboutApp * app =(CAboutApp *)AfxGetApp();
app->OnAppAbout();
}
chenzhou35 2002-03-12
  • 打赏
  • 举报
回复
#include定义对话框的头文件。

16,551

社区成员

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

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

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