MFC 如何将一个对话框的内容添加到另外一个对话框的列表控件里

如题所述

第1个回答  推荐于2016-01-08
改用非模态对话框
C/C++ code
CChange *pchangedlg = new CChange;
if (pchangedlg->Create(你修改对话框ID, this))
{
pchangedlg->ShowWindow(SW_SHOW); //显示修改对话框
UpdateData();
int nIndex=m_Listbx.GetCurSel();
if (nIndex!=LB_ERR)
{
student * pstudent=(student *)m_Listbx.GetItemDataPtr(nIndex);
pchangedlg->m_ChgeName=pstudent->name;
pchangedlg->m_ChgeSubject=pstudent->subject;
pchangedlg->m_ChgeId=pstudent->studentid;
pchangedlg->m_ChgeClass=pstudent->studentclass;
}
UpdateData(FALSE);
}
第2个回答  2011-11-26
把另外一个对话框的列表控件地址作为参数传给当前对话框,在当前对话框给传递过来的列表控件添加内容就行了。
第3个回答  2011-12-01
子对话框输入:
UpdateData(TRUE);
GetDlgItem(IDC_EDIT1)->GetWindowText(str0);
GetDlgItem(IDC_EDIT2)->GetWindowText(str1);
UINT nID=GetCheckedRadioButton(IDC_RADIO1,IDC_RADIO2);
GetDlgItemText(nID,str2);
GetDlgItem(IDC_EDIT3)->GetWindowText(str3);
GetDlgItem(IDC_EDIT4)->GetWindowText(str4);
父对话框中输入:
m_list.InsertItem(index,"");
int count;
/*POSITION pos=m_list.GetFirstSelectedItemPosition();
while(pos!=NULL)
{int itemindex=m_list.GetNextSelectedItem(pos);
}*/
// return itemindex;
//for(int i=0;i<5; i++)
m_list.SetItemText(index,0,dlg.str0);
m_list.SetItemText(index,1,dlg.str1);
m_list.SetItemText(index,2,dlg.str2);
m_list.SetItemText(index,3,dlg.str3);
m_list.SetItemText(index,4,dlg.str4);
m_list.SetTextBkColor(RGB(100,150,23));

UpdateData(FALSE);
count++;本回答被提问者采纳
第4个回答  2011-11-26
通过对话框的指针追问

CEdit *editl=(CEdit *)GetDlgItem(IDC_EDIT_JK);
editl->GetWindowText(JK);
app->JK=JK;
这样对不对?但是无法执行啊 大概有什么原因啊

如何在MFC中把一个对话框的控件复制到另一个对话框?
直接ctrl+a全选复制粘贴。MFC中从一个dialog复制控件到另一个dialog只需要选中,复制,粘贴就可以了,剩下的就是添加调整布局和修改消息相应。同一个dialog的控件复制要注意ID和消息相应函数的修改,否则容易异常。

如何实现MFC一个对话框的编辑框输入内容,另一个对话框的编辑框输出
void CQq1Dlg::OnButton1(){ \/\/ TODO: Add your control notification handler code here UpdateData(TRUE);CString strMsg;GetDlgItem(IDC_EDIT1)->GetWindowText(strMsg);HWND hWnd = ::FindWindow(NULL,"dialogText");\/\/第二个参数为另一个对话框的标题 CDialog1* dlg = (CDialog1*)CWnd::...

MFC中子对话框中的数据如何更新到母对话框中
嘿嘿,这个很简单,在主对话框的类的头文件里,让子对话框生成的类实例化一个对象,然后在主界面直接调用呗 ,比如主对话框的类是YouDlg,然后子对话框的类是CChild1生成了一个Child1.h和Child1.cpp文件,那就直接在YouDlg.h里面#include“Child1.h”然后在添加CChild1 child1;再假如子对话框的...

MFC 如何将一个对话框的值,传递给下一个对话框
1.构造函数,不知道你的B对话框是模式还是非模式,还有显示的时候是创建B还是已经创建了B。A中编辑框关联一个CString变量 m_text;然后显示B的时候先UpdateData(TRUE);B中增加变量const CString &m_Atext;然后修改B的构造函数增加一个参数B::B(const CString &Atext):m_Atext(Atext),调用B构造的时...

mfc如何将编辑框的内容读取到列表控件中?
1、为界面添加一个List Control控件。2、更改这个控件的view属性为Report 3、为这个控件添加一个控制型变量 假设为m_ctlList;4、在界面的初始化函数OnInitDialog()函数中初始化这个控件主要是插入列表的头,主要调用 int InsertColumn( int nCol, LPCTSTR lpszColumnHeading, int nFormat = LVCFMT...

MFC中怎样在一个对话框类引用另一个对话框计算得的数据
全局变量也可以解决该问题。将该数组设置为该工程的全局变量,将一个对话框的计算结果保存在该全局变量中,关闭该对话框后,在另一个对话框中访问该全局数组,就可以得到上一个对话框的计算结果了。那么每次就可以通过改变全局变量的值来进行数据的传递了。

MFC如何添加其它项目的对话框
在你要调用这些对话框的窗体头文件中include这些导入对话框的头文件。比如你导入了mytestbox.h 和mytestbox.cpp文件你想在myadlg.h 和myadlg.cpp组成的窗体文件中调用这个对话框,那么就在myadlg.h的开头部分加上#include "mytestbox.h" 然后可以在这里的类中声明相关的对话框对象了。

怎么实现在mfc选择不同名时,通过同一个界面将数据添加到对应名的...
假设 A B是两个按钮。给AB添加单击选择消息响应函数。声明全局变量 CString tableName标识AB 表。AB消息响应函数体中,如果选择A,tableName=“表A”;如果选择B,tableName=“表B”。A消息响应函数体实现代码参考:void C**::OnButtonA(){ tableName="table_A";C*** dlg;dlg.Modal();}...

MFC问题,如果我一个对话框的要访问另外一个对话框的成员变量,应该怎么...
假设有2个对话框A、B,对应的类为:CADlg、CBDlg 对话框A想访问对话框B的成员变量m_bData,那么m_bData就必须声明为public类型,然后在CADlg里面定义一个CBDlg的实例m_bDlg,这样在对话框A就可以通过m_bDlg.m_bData的方式 访问对话框B的成员变量m_bData了 ...

在VC++中的MFC利用一个dialoge对话框中按钮调用另一个dialoge对话框
1.可以调用模态的对话框 void ADlg:: Button(){ BDlg bdlg;bdlg.DoModal();} 2.调用非模态 在 Adlg.h 包含 Bdlg.h头文件 中定义 BDlg* m_pdblg;在Adlg.cpp中 在构造函数中初始化 m_pdblg = NULL;在析构函数中 if(m_pdblg != NULL){ delete m_pdblg;} 在单击按钮中 void ...

相似回答