MFC将对话框复制一份后粘贴出另一个对话框,将上面控件删除了运行时候却还在

大神求助!本人菜鸟一枚,最近在做MFC,复制了MFC上一个对话框建了另一个对话框,这样就连同之前对话框上的控件也复制过来了,然后我删了控件,运行成功,但是运行后的界面上之前删除的控件却还在,不知是怎么回事?应该如何解决,重新生成解决方案、Debug里文件全删除也都不好使。。

7个回答

运行成功,但是运行后的界面上之前删除的控件却还在

这种情况很明显,是代码绑定的资源 ID 没有改变。

对应头文件中,修改枚举值。
图片说明

你是怎么复制的,复制的资源还是cpp文件。如果是cpp文件,看看你绑定的资源是不是还是原来的。

图片说明

光删除资源设计的元素还不行,还要把对话框初始化的相关代码删掉才行

必须确认删除的是当前对话框上的空间。然后,检查对话框代码部分,不需要的事件处理,控件关联的都检查下,也得删除。另外,创建对话框时候,看看是不是创建的被复制的对话框,这样的话,就算复制后的对话框怎么改,运行时,创建的对话框还是被复制的。

删除资源,当然可以了。运行的时候还在可能是中间文件的问题,执行下clean,然后rebuild下,如果不行,搜索IDD_IT_DILOAG ,在rc文件中手动将其删除,然后再rebuild

解决了,多谢各位大神!果然是绑定错了!

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
MFC对话框中控件删除了,调试运行怎么还在?
MFC对话框中控件删除了,调试运行怎么还在?另外新增的控件也无法显示。关闭工程重新打开还是一样不行,我用的VS2005。
MFC 将一个对话框的变量(指针)传到另一个对话框
我在一个对话框中声明了链表LinkList L;并在这个链表里赋了值,现在想把这个链表(带着里面的值)传到另一个对话框,要怎么传递?rn求各位帮忙,搞了好久也查过很多办法就是不成功……帮顶给分!谢谢!!!
MFC在对话框上面绘图
之前只写过在视图中写绘制函数,之后发现对话框里面没有onDraw()函数只有onPaint函数,所以没法重写绘制函数。 在对话框里面写绘图程序可以: mydraw() { CClintDC *aDC(this); aDC->DrawArc(); }
MFC 复制另一个工程中的对话框资源
vc6.0 MFC 复制另一个工程中的对话框资源
MFC基于对话框怎么在对话框中弹出指定对话框后将原对话框销毁
MFC基于对话框怎么在对话框中弹出指定对话框后将原对话框销毁,就是我如果单击一个对话框弹出另一个对话框后,将原对话框销毁。我试过了,用EndDialog无法达到效果。
为何删除了对话框中原有的check控件和edit控件,运行对话框就出错?
原来的对话框中有check和edit控件,现在想把它们去掉,我通过他们的id找到相应的变量,和函数,全部都去掉了,可是运行时还是显示:debug assertion failed.rn我跟踪了一下,显示rnError: no data exchange control with ID 0x0468.rn不知道怎么修改了,请大家帮忙指点一下吧.
将一个工程下的对话框复制到另一个工程下
1. 把两个项目放到一个解决方案下,在资源解决方案上右键->添加->新建解决方案文件夹,在刚刚新建文件夹上右键添加现有项目。 2.复制资源试图中的Dialog到另外一个项目中,dialog上右键复制 ,直接粘贴就可以了,粘贴完直接根据自己的需要更改ID和其他的东西,不运行ID是不会进入resouce.h的; 3.添加类向导 添加类; 4. 用新类替换旧类,如果Dialog名字改...
怎样将一个对话框有机的嵌入另一个对话框中?
我现在想将一个小对话框嵌入另一个大的对话框中,请问各位怎么实现?rn在线等待。
vc 将一个对话框显示在另一个对话框里面
vc点击菜单的时候Domodal() 直接弹出来了 , 现在要让他显示在另一个对话框里面 好像要设置child 还有什么 new 一个 在create ,或者在视图框里面显示
MFC,在一个对话框类中调用另一个对话框的控件的函数
我的代码如下:rn我的主对话框:CServerDlgrn主对话框有一个用户管理的按钮,点击用户管理,弹出CUserManage对话框rnCUserManage对话框有ListCtrl控件,相关变量m_list。rnrnrn由于主对话框有用户的信息username,userID,rn且主窗体的数据时一个一个过来的,所以要在主窗体调用函数refrshdaternrefrshdate()rnrnrnCUserManage dlg;rndlg.m_list.GetItemCount()rn。。。。。。。rnrnrn但是出错了,,在dlg.m_list.GetItemCount()是没有调用成功为什么,是不m_list没有初始化说明的,谢谢大神回答rnrnrn
表删除了,触发器还在
今天在数据库中查到了一些触发器,这些触发器的表已经被删掉了。为什么在删除表的时候没有自动删除表下的触发器呢?
vc 怎么将MFC dll 的对话框 嵌入到 主对话框中?
分不多,请大侠指点一下。rn如图片,http://hi.baidu.com/apolloj/album/item/b55de91f733699c21ad57660.htmlrnVC2008中,我能在主对话框中调用DLL中的对话框,但我想将DLL中的对话框嵌入到主对话中,使两个对话框成为一个整体。rn有什么办法实现?rn
[转载]2 MFC下将字符数组输入对话框
原文地址:2MFC下将字符数组输入对话框作者:Ma_Hong_Kai OS: win7 64 位 DP (delevelopment platform):vs2008 …… char ch[len] = "chjkdajdsa"; CString str(len); ::MessageBox(NULL, str, L"ch", MB_OK); …… 执行这段代码将会弹出……...
将对话框加入停靠窗口
我想做一个OFFICE 2007风格的软件,采用的是VC6+BCG,建了一个SDI的工程,在左边加入了一个停靠窗口,想在停靠窗口在中加入一些控件(有7、8个吧,如编辑框,按钮等)请问我能先做一个对话框(因为对话框在MFC下布局很好做,直接将控件拖入就行了),然后将对话框作为一个整体加入到停靠窗口中吗?rn 如果不行,请问怎么将多个控件一一加入到停靠面板中呢,有几个地方要注意修改的呢,请高手解答,最好有示例代码,谢谢。
将图片显示到对话框问题
[code=C/C++] CBitmap bitmap; //创建位图rn bitmap.CreateBitmapIndirect(&m_Bitmap); //m_Bitmap 是BITMAP结构,已填充正确rnrn HDC hdc = ::GetWindowDC(GetSafeHwnd());rn CDC* pdc = CDC::FromHandle(hdc);rnrn CDC memDC;rn memDC.CreateCompatibleDC(pdc); //创建内存设备dcrn memDC.SelectObject(bitmap); //将位图选入设备rnrn pdc->BitBlt(0,0, 125,105, &memDC, 0,0, SRCCOPY); //将位图拷贝到控件上rnrn CDC::DeleteTempMap();rnrn ::ReleaseDC(GetSafeHwnd(), hdc);rn[/code]rnrn显示位图到窗口, 程序卡死, 不知原因,望大侠赐教rn注释:rnm_Bitmap.bmType = 0;rnm_Bitmap.bmWidth = 125;rnm_Bitmap.bmHeight = 105;rnm_Bitmap.bmPlanes = 1;rnm_Bitmap.bmBitsPixel = 32;rnm_Bitmap.bmWidthBytes = 500; 这几个值都是根据本机调试的时候得来的rnm_Bitmap.bmBits = 这个缓冲区是send过来的数据, 是125*105的数组, 值是正确的
一个对话框获取另一个对话框控件的值。
我的意思是我在窗体3中有几个控件listcontrol用来显示,从注册表里读出的数据;button用来调用窗体4。 rn窗体3的listcontrol的行值是用从注册表读出的结构体赋值的,所以窗体4修改是可以的。 rnrn我先在想把窗体3中控件listcontrol中选中的行,再点击窗体3中的button,调用窗体4并把窗体3中listcontrol索选的行值显示出来,就是把它行值传到窗体4中并在窗体4中实现修改,然后写回注册表里。 rnrn我就是想在3窗体选中的行,在4窗体中获得它的值,把它的值赋值到窗体4中的radio button和check box控件上显示出来。
MFC 复制DLG对话框的方法
通常的做法是:用Gallery 在Class   View选择你对话框所对应的类,击右键选择Add   to   Gallery, 在你另一工程中选择Project\Add   to   project\components   and   controls   ,选择你刚加入的对话框 ...
MFC中怎么复制对话框?
对话框上面有很多控件,怎么才能把它复制到另外一个工程中?
MFC 对话框控件错位
工程为MFC,整个工程只有添加控件,还没有关联变量,添加其他任何代码。运行后如图:[img=https://img-bbs.csdn.net/upload/201309/27/1380268239_843449.jpg][/img]
MFC控件跑出对话框
我做了一个界面,在我的电脑上显示没有问题rn但是有些电脑上对话框的大小变化了,控件的位置也变化了rn如果我把对话框大小限定为原来的大小,控件就会跑出对话框,请问怎么解决rn(已经排除分辨率的问题)
MFC 对话框控件之单选按钮
MFC 对话框控件之单选按钮 MFC 对话框控件之单选按钮 MFC 对话框控件之单选按钮
MFC控件与对话框
MFC控件与对话框,专门对基于对话框的基本控件实用讲解
MFC 对话框控件和变量类型
You can use the Add Member Variable Wizard to add a member variable to a dialog box control created using MFC.The type of control for which you add the member variable determines the options that appea
MFC对话框和控件源代码
这是一个MFC对话框和控件源代码,包括菜单,菜单响应函数,对话框,和公共对话框
mfc对话框及控件缩放
mfc对话框及控件缩放(控件随着对话框的大小成比例缩放)
MFC对话框如何运行后隐藏起来
一般初学者会简单的认为在初始化对话框中ShowWindow(SW_HIDE);不就可以了吗?但其实那样是不行的,因为MFC中对话框的初始化显示其实很复杂,并不像SDK中的ShowWindow那么简单。下面介绍几种方法来达到运行后立刻隐藏。1.使用MoveWindow //在初始化对话框中使用 MoveWindow(0, 0, 0, 0);注意:这个把对话框变没了,所以你点击任务栏程序图
对话框初始化的时候怎样将光标置于Edit控件上?
一个带Edit控件的对话框,打开的时候Edit控件没有被激活,必须要在上面点一下才能开始输入文字。rn怎样默认让它被激活,这样对话框一出来就能够直接输入文字啊?
怎么将其它对话框中的控件导到自已的对话框里?
将资源文件中的内容拷贝到自已的资源文件中rn然后在resource.h文件中加上控件ID的定义。rn编译时没错,但执行时出现异常。rn说是在文件afxcoll.inl里的336行出错?rn怎么回事?怎么处理?谢谢rn有没有其它加入的办法?rn我的控件是放的CFormView里的。
将一个基于对话框的mfc工程改写成activex控件
要做哪些工作?工作量大吗?rnrn
MFC对话框控件随对话框的大小变化
//控件随窗体自动缩放 string[] tmp = new string[2]; tmp = ((Form)sender).Tag.ToString().Split(','); float width = (float)((Form)sender).Width / (float)Convert.ToInt16(tmp[0
MFC中怎样将一个对话框里的结构数据传递到另一个对话框里显示出来
rn这个学生信息对话框有个列表框,旁边有四个编辑框分别是姓名,班级,学号专业,列表框里有学生的名字,当我点击列表框里的名字时,旁边的编辑框就显示有关该学生的信息。rn该结构在学生信息对话框的类里边。rn数据结构:rnpublic:rnrn rn struct student rn rn CString studentclass;rn CString name;rn CString subject;rn DWORD studentid;rn ;rn初始化:由于我想让这个对话框弹出时就显示信息,我就放到这个对话框类的初始化函数里了。rn BOOL CMessage::OnInitDialog() rnrn CDialog::OnInitDialog();rn rn // TODO: Add extra initialization herernrnrn UpdateData(TRUE);rn int nIndex=m_Listbx.AddString("张三");rn student student1;rn student1.name="张三";rn student1.studentclass="软件1101";rn student1.studentid=123456;rn student1.subject="软件";rn m_Listbx.SetItemDataPtr(nIndex,new student(student1));rn rn rn int nIndex2=m_Listbx.AddString("李四");rn student student2;rn student2.name="李四";rn student2.studentclass="软件1102";rn student2.studentid=22657;rn student2.subject="软件工程";rn m_Listbx.SetItemDataPtr(nIndex2,new student(student2));rn rn rn int nIndex3=m_Listbx.AddString("王二麻");rn student student3;rn student3.name="王二麻";rn student3.studentclass="软件1101";rn student3.studentid=34159;rn student3.subject="软件工程";rn m_Listbx.SetItemDataPtr(nIndex3,new student(student3));rn rn rn int nIndex4=m_Listbx.AddString("赵钱");rn student student4;rn student4.name="赵钱";rn student4.studentclass="软件1101";rn rn student4.studentid=12346;rn student4.subject="软件工程";rn m_Listbx.SetItemDataPtr(nIndex4,new student(student4));rn rn rn int nIndex5=m_Listbx.AddString("孙李");rn student student5;rn student5.name="孙李";rn student5.studentclass="软件1102";rn student5.studentid=341592;rn student5.subject="软件工程";rn m_Listbx.SetItemDataPtr(nIndex5,new student(student4));rn rn UpdateData(FALSE);rnrnrn rn return TRUE; // return TRUE unless you set the focus to a controlrn // EXCEPTION: OCX Property Pages should return FALSErnrn当我在列表框里的学生名字选项改变时,旁边的编辑框也改变,所以另一个函数的代码:rnvoid CMessage::OnSelchangeListname() rnrn // TODO: Add your control notification handler code herern int nIndex=m_Listbx.GetCurSel();rn if (nIndex!=LB_ERR)rn rn student * pstudent=(student *)m_Listbx.GetItemDataPtr(nIndex);rn m_OutputName=pstudent->name;rn m_OutputSubject=pstudent->subject;rn m_OutputId=pstudent->studentid;rn m_OutputClass=pstudent->studentclass;rn UpdateData(FALSE);rn rnrn rnrn然后我又做了一个修改对话框,有四个编辑框,分别是姓名,班级,学号,专业,一个应用按钮,一个确定按钮,功能是当我双击列表框的学生名字时,会弹出此修改对话框,此对话框会在编辑框分别显示当前该学生的信息,然后我在编辑框输入我想修改的信息,点击应用,然后确定,当我再次点击学生信息对话框的学生列表的每个学生名的字时,旁边的编辑框就会显示信息,当然如果我在修改对话框把信息修改的话,就会显示我修改后的信息。rn接下来就是我的问题,我就卡在当弹出修改对话框时,修改对话框并没有显示当前学生信息。以下是代码。rn我把代码放在学生信息对话框的列表框双击时的响应函数里了。rnvoid CMessage::OnDblclkListname() rnrn // TODO: Add your control notification handler code herern CChange changedlg;rn if (changedlg.DoModal()==IDOK)rn rn UpdateData();rn int nIndex=m_Listbx.GetCurSel();rn if (nIndex!=LB_ERR)rn rn student * pstudent=(student *)m_Listbx.GetItemDataPtr(nIndex);rn changedlg.m_ChgeName=pstudent->name;rn changedlg.m_ChgeSubject=pstudent->subject;rn changedlg.m_ChgeId=pstudent->studentid;rn changedlg.m_ChgeClass=pstudent->studentclass;rn rn UpdateData(FALSE);rn rnrn rnrn rn请问到底是什么问题,是我的结构错了,还是代码的位置错了,还有我在修改对话框那,怎样将我修改后的数据应用到学生信息结构上也没有思路,rn请各位朋友,学长,门指点一下小弟。
如何在MFC多线程程序中安全的将一个对话框的指针传给另一个对话框?
我是这样作的,我将这个对话框的指针设为一个全局变量,这样我在其他的对话框类中就可以自由使用了,可是老是出现assert警告.怎么解决?rn警告的内容如下(在wincore.cpp中):rnASSERT((p = pMap->LookupPermanent(m_hWnd)) != NULL ||rn (p = pMap->LookupTemporary(m_hWnd)) != NULL);rn ASSERT((CWnd*)p == this); // must be usrnrn // Note: if either of the above asserts fire and you arern // writing a multithreaded application, it is likely thatrn // you have passed a C++ object from one thread to anotherrn // and have used that object in a way that was not intended.rn // (only simple inline wrapper functions should be used)rn //rn // In general, CWnd objects should be passed by HWND fromrn // one thread to another. The receiving thread can wraprn // the HWND with a CWnd object by using CWnd::FromHandle.rn //rn // It is dangerous to pass C++ objects from one thread torn // another, unless the objects are designed to be used inrn // such a manner.
MFC 对话框 透明控件 怎么总会透明到对话框的后面的窗口的背景上面
比如对话框时红色背景。对话框后面是今日桌面rnrn按钮的背景色怎么会是 今日桌面呢rnrnrn对话框 rnOnEraseBkgnd(CDC* pDC)rnCRect rect;rn GetClientRect(&rect);rnrn pDC->BitBlt(rect.left,rect.top,rect.Width(),rect.Height(),&m_tmpBKDC,0,0,SRCCOPY);rn return 1;rnrn按钮控件rnOnEraseBkgnd(CDC* pDC)rnCRect rect;rnthis->GetWindowRect(&rect);rnthis->GetParent()->ScreenToClient(&rect);rnrnrnpDC->BitBlt(0,0,48,48,this->GetParent()->GetDC(),rect.left,rect.top,SRCCOPY);rnrn return 1;
MFC 对话框嵌套对话框
可以将多个对话框嵌入到一个对话框中,解决一堆控件在一个对话框中的问题。可以做成TABLE页等等。
不小心将数据删除了,如何恢复?
不小心将数据删除一大半了,如何再恢复?没有备份.rnSQL SERVER 2005
将administrator删除了如何恢复?
WIN2000没有登陆到域,无意把administrator给删除了,现在只有一个普通用户帐号,请问我如何恢复管理员的帐号或权限?
删除了删除了删除了删除了删除了删除了删除了删除了删除了删除了删除了
删除了删除了删除了删除了删除了删除了删除了删除了删除了删除了删除了
对话框复制
各位大虾如何将一个工程中的对话框复制到另一个对话中去啊。谢了。
从另一个对话框中关闭另一个对话框
基于对话框的Socket通信程序,从主对话框中以Domodal()显示另一个窗体A,rn然后当收到关闭消息时关闭A,我得方法如下:rnvoid A::Close()rnrn CDialog::OnOK();rnrnrn主对话框中有A的指针p,收到消息时调用p->Close();rn但是出错!如何解决?rn
如何访问另一个对话框的控件
在资源文件中建立了2个对话框rnrn现在另一个对话框已显示了的基础上弹出了另一个对话框 现在在这个弹出的对话框的文本框中写入了数据 要求将这个数据加入到第一个对话框的列表框中...rnrn还有就是两个对话框.cpp里面的变量互访 请问能不能实现?不用全局声明.
相关热词 c# 标准差 计算 c#siki第五季 c#入门推荐书 c# 解码海康数据流 c# xml的遍历循环 c# 取 查看源码没有的 c#解决高并发 委托 c#日期转化为字符串 c# 显示问号 c# 字典对象池