hur.cn - 华软网

 热门搜索

帮忙啊,在一个对话框中动态的给另一个对话框中添加编辑框

  作者:未知    来源:网络    更新时间:2010/7/19
假设:两个对话框,A_Dlg,B_Dlg,当按下A_Dlg的一个按钮A_Btn,就在B_Dlg中添加了一个编辑框(如果要添加多个编辑框,编辑框的位置怎么设置?) 
我是新手,希望大侠们在百忙中抽点时间给小弟指点几分,有代码最好。
感激不尽!!!!
---华软 网友回答---
如果按下A_Dlg的按钮A_Btn时,B_Dlg也存在,那么你可以先定义一个CEdit *m_pEdit指针,然后用m_pEdit->Create(...)进行创建,其中父窗口写B_Dlg,所以你要先取得B_Dlg的指针。
---华软网友回复---
在B_Dlg创建Edit写一个方法

CEdit* pEdit = new CEdit;  //将edit的指针保存至一个容器(如vector)里进行管理
pEdit->Create(ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,
   CRect(10, 10, 100, 100), //edit的位置,根据自己需要调整
   this, //B_Dlg的对象指针
   ID //edit的id,以某一数字开始,累计。
    );

---华软网友回复---
补充:B_Dlg不存在,当按下A_Dlg的一个按钮A_Btn时,调用模态对话框B_Dlg,并创建编辑框。。
---华软网友回复---
引用 3 楼 mdxz1229 的回复:
补充:B_Dlg不存在,当按下A_Dlg的一个按钮A_Btn时,调用模态对话框B_Dlg,并创建编辑框。。

如果B_Dlg是模态对话框的话,那么有点麻烦,因为当B_Dlg被DoModal时,如果它没有被关闭,那么,下面的代码不会被执行,如果关闭之后再Create的话又不行。
---华软网友回复---
如果B_Dlg是模态对话框,你不可能点击A_Dlg并在B_Dlg创建随意编辑框。
要么你让B_Dlg是非模态对话框。

---华软网友回复---
在B对话框中添加一个公共方法,用来在本对话框中创建一个文本框。然后在A对话框中调用B对话框的这个公共方法。我觉得这样程序的结构比较清楚,且进行了功能的封装。
---华软网友回复---
引用 1 楼 wltg2001 的回复:
如果按下A_Dlg的按钮A_Btn时,B_Dlg也存在,那么你可以先定义一个CEdit *m_pEdit指针,然后用m_pEdit->Create(...)进行创建,其中父窗口写B_Dlg,所以你要先取得B_Dlg的指针。

正解。
---华软网友回复---
每天回帖即可获得10分可用分
---华软网友回复---
引用楼主 mdxz1229 的回复:
假设:两个对话框,A_Dlg,B_Dlg,当按下A_Dlg的一个按钮A_Btn,就在B_Dlg中添加了一个编辑框(如果要添加多个编辑框,编辑框的位置怎么设置?) 
我是新手,希望大侠们在百忙中抽点时间给小弟指点几分,有代码最好。
感激不尽!!!!

非模态对话框B_Dlg,当你点击A_Dlg上的按钮A_Btn的时候,发送一个消息给B_Dlg,在B_Dlg的消息响应函数中创建对话框,位置你可以使用消息中的WPARAM和LPARAM参数来传递,或者更简单一点,你在B_Dlg中定义一个public的函数,该函数的参数为将要创建的编辑框的CRect就可以了。。。
---华软网友回复---
呃,B_Dlg中有编辑框,但是开始时隐藏,当点击A_Dlg上的按钮A_Btn的时候,把B_Dlg中的编辑框显示出来行不行
---华软网友回复---
问题还是没有解决。。。。。。。。。
就算是创建非模态的吧。哪位好心人帮忙谢谢代码啊??????????、、、

---华软网友回复---
引用楼主 mdxz1229 的回复:
假设:两个对话框,A_Dlg,B_Dlg,当按下A_Dlg的一个按钮A_Btn,就在B_Dlg中添加了一个编辑框(如果要添加多个编辑框,编辑框的位置怎么设置?) 
我是新手,希望大侠们在百忙中抽点时间给小弟指点几分,有代码最好。
感激不尽!!!!

我们可以巧妙的来实现,在B_Dlg中添加编辑框,首先我们把它影藏起来(把visable属性去掉),当单击按钮A_Btn时发送一个消息将它显示m_Edit.ShowWindow(SW_SHOW);,至于编辑框的位置是你首先添加的 想放哪就放哪,;也可以用CEdit中的Creat来动态创建……
---华软网友回复---
引用 12 楼 wjpaaa 的回复:
引用楼主 mdxz1229 的回复:
假设:两个对话框,A_Dlg,B_Dlg,当按下A_Dlg的一个按钮A_Btn,就在B_Dlg中添加了一个编辑框(如果要添加多个编辑框,编辑框的位置怎么设置?)
我是新手,希望大侠们在百忙中抽点时间给小弟指点几分,有代码最好。
感激不尽!!!!

我们可以巧妙的来实现,在B_Dlg中添加编辑框,首先我们把它影藏起来(把visable属性去掉),当单击……
果然很巧妙。。
---华软网友回复---
我是来拿分的
---华软网友回复---
明确告诉你,你的思路有误,根据你的程序 换思路吧!!!!!!!!!!1
---华软网友回复---
我其实没有找到满意的答案,我生日是15号,就把分给15楼吧!!!!!!!!!!!!!
---华软网友回复---
也没找到满意答案      
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。