大侠,按钮弹出新窗体为什么老报错

wu14245670 2009-08-07 05:23:41
各位大侠我在一个界面上设置了一个按钮
我要让它弹出新窗体
代码如下
CUBARGAIN * uba=new CUBARGAIN();//弹出这个类的窗体

uba->Create(IDD_UBARGAIN_FORM,uba); <-这里老说Create的第二个参数有误,我改成this也不行,各位大侠帮帮我谢谢了小弟在线等
uba->ShowWindow(true);
...全文
64 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
wu14245670 2009-08-10
  • 打赏
  • 举报
回复
谢谢你们
前两天没上网
不好意思
谢谢大家~~~
我改成NULL或者不写都不行
不写就是第一个参数有问题
写了NULL就是第二个参数有问题~~~
我是在Insert里创建的
基类是
CFromView
bragi523 2009-08-09
  • 打赏
  • 举报
回复
uba->Create(IDD_UBARGAIN_FORM,uba);
第二个参数是父窗口的指针
也可以省掉,默认以主窗口为父窗口
paerxiushi 2009-08-09
  • 打赏
  • 举报
回复
如果CUBARGAIN是从CWnd继承的类,比如CChildWnd继承了CWnd.那么在按钮响应函数处,添加代码:


pWnd=new CChildWnd();
pWnd->Create(NULL,L"12",WS_OVERLAPPEDWINDOW,CRect(50,50,300,300),AfxGetMainWnd(),100);

pWnd->ShowWindow(SW_SHOWNA);
pWnd->UpdateWindow();


如果CUBARGAIN是从CDialog继承的类,比如CCldDlg继承了CDialog.那么在按钮响应函数处,添加代码:

pDlg=new CCldDlg();
pDlg->Create(MAKEINTRESOURCE(IDD_BUTTON_DIALOG),AfxGetMainWnd());
pDlg->ShowWindow(SW_SHOWNA);
pDlg->UpdateWindow();
paerxiushi 2009-08-09
  • 打赏
  • 举报
回复
你可以试一试第二个参数写成NULL试试
-----------------------------------
第一个参数是窗体类名,第二参数是窗体标题,你改第二个参数没什么大用处,想想清楚呀。
udieudie 2009-08-09
  • 打赏
  • 举报
回复
个人感觉问题是这个样子的
首先,CUBARGAIN 要继承MFC自己的窗口类
其次,你可以试一试第二个参数写成NULL试试
我记得我都是写成NULL
还有你可以调试看一看,我有一段时间调试的时候发现这个新申请的uba的地址(new过的)始终为00000x0
不知道为什么
等后来过一段时间就好了
xy_dream 2009-08-08
  • 打赏
  • 举报
回复
CUBARGAIN 是个什么类,是对话框类吗
  • 打赏
  • 举报
回复
CUBARGAIN是对话框吗? 还是直接从CWnd派生的
zhuzhenlei 2009-08-07
  • 打赏
  • 举报
回复
第二个参数指向父窗口额。。
zoulie 2009-08-07
  • 打赏
  • 举报
回复
CUBARGAIN 是从什么继承来的

16,551

社区成员

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

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

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