MFC 动态创建控件问题
动态创建了多个复选框和文本框,由于个数是从数据库中读取的,所有每次可能都不同,如下图所示,点击确定按钮时,想知道创建的这些复选框那些被选中了,并且想获得这些文本框中输入的...
动态创建了多个复选框和文本框,由于个数是从数据库中读取的,所有每次可能都不同,如下图所示,点击确定按钮时,想知道创建的这些复选框那些被选中了,并且想获得这些文本框中输入的文本信息应该如何操作,下面是程序中的代码供各位高手查看:
1.类中创建成员变量
CButton *pButton;
CEdit *pEdit1;
2.InitBasicInfo()中创建部分如下:
for(int i=0;i<iNum;i++)
{
pButton[i].Create(strTittle, WS_CHILD|BS_DEFPUSHBUTTON|WS_VISIBLE|BS_AUTOCHECKBOX,
CRect(10, 120+30*i, 150, 140+30*i), this, 100+i);
pEdit1.Create( WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER|WS_EX_TOOLWINDOW,CRect(150, 120+30*i, 200, 140+30*i), this, 10+i);
} 展开
1.类中创建成员变量
CButton *pButton;
CEdit *pEdit1;
2.InitBasicInfo()中创建部分如下:
for(int i=0;i<iNum;i++)
{
pButton[i].Create(strTittle, WS_CHILD|BS_DEFPUSHBUTTON|WS_VISIBLE|BS_AUTOCHECKBOX,
CRect(10, 120+30*i, 150, 140+30*i), this, 100+i);
pEdit1.Create( WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER|WS_EX_TOOLWINDOW,CRect(150, 120+30*i, 200, 140+30*i), this, 10+i);
} 展开
3个回答
展开全部
获取复选框选中状态:
if (1 == pButton[i]) // 选中
{
// 你的处理
}
获取文本框的文本:
CString strText;
pEdit1.GetWindowText(strText);
if (1 == pButton[i]) // 选中
{
// 你的处理
}
获取文本框的文本:
CString strText;
pEdit1.GetWindowText(strText);
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
类中创建成员变量:
CButton
*pButton;
CEdit
*pEdit;
OnInitDialog函数中:
pButton=new
CButton(iNum);
pEdit=new
CEdit(iNum);
for(int
i=0;i<iNum;i++)
{
pButton[i].Create(strTittle,
WS_CHILD|BS_DEFPUSHBUTTON|WS_VISIBLE|BS_AUTOCHECKBOX,
CRect(10,
120+30*i,
150,
140+30*i),
this,
100+i);
pEdit.Create(
WS_CHILD
|
WS_VISIBLE
|
WS_TABSTOP
|
WS_BORDER|WS_EX_TOOLWINDOW,CRect(150,
120+30*i,
200,
140+30*i),
this,
10+i);
}
在你需要得到编辑框文本的地方:
UpdateData(true);
for(int
i=0;i<iNum;i++)
{
if(1==pButton[i].GetCheck())
{
CString
strText;
pEdit[i].GetWindowText(strText);
…………//自己添加处理
}
}
CButton
*pButton;
CEdit
*pEdit;
OnInitDialog函数中:
pButton=new
CButton(iNum);
pEdit=new
CEdit(iNum);
for(int
i=0;i<iNum;i++)
{
pButton[i].Create(strTittle,
WS_CHILD|BS_DEFPUSHBUTTON|WS_VISIBLE|BS_AUTOCHECKBOX,
CRect(10,
120+30*i,
150,
140+30*i),
this,
100+i);
pEdit.Create(
WS_CHILD
|
WS_VISIBLE
|
WS_TABSTOP
|
WS_BORDER|WS_EX_TOOLWINDOW,CRect(150,
120+30*i,
200,
140+30*i),
this,
10+i);
}
在你需要得到编辑框文本的地方:
UpdateData(true);
for(int
i=0;i<iNum;i++)
{
if(1==pButton[i].GetCheck())
{
CString
strText;
pEdit[i].GetWindowText(strText);
…………//自己添加处理
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
类中创建成员变量:
CButton *pButton;
CEdit *pEdit;
OnInitDialog函数中:
pButton=new CButton(iNum);
pEdit=new CEdit(iNum);
for(int i=0;i<iNum;i++)
{
pButton[i].Create(strTittle, WS_CHILD|BS_DEFPUSHBUTTON|WS_VISIBLE|BS_AUTOCHECKBOX,
CRect(10, 120+30*i, 150, 140+30*i), this, 100+i);
pEdit.Create( WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER|WS_EX_TOOLWINDOW,CRect(150, 120+30*i, 200, 140+30*i), this, 10+i);
}
在你需要得到编辑框文本的地方:
UpdateData(true);
for(int i=0;i<iNum;i++)
{
if(1==pButton[i].GetCheck())
{
CString strText;
pEdit[i].GetWindowText(strText);
…………//自己添加处理
}
}
CButton *pButton;
CEdit *pEdit;
OnInitDialog函数中:
pButton=new CButton(iNum);
pEdit=new CEdit(iNum);
for(int i=0;i<iNum;i++)
{
pButton[i].Create(strTittle, WS_CHILD|BS_DEFPUSHBUTTON|WS_VISIBLE|BS_AUTOCHECKBOX,
CRect(10, 120+30*i, 150, 140+30*i), this, 100+i);
pEdit.Create( WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER|WS_EX_TOOLWINDOW,CRect(150, 120+30*i, 200, 140+30*i), this, 10+i);
}
在你需要得到编辑框文本的地方:
UpdateData(true);
for(int i=0;i<iNum;i++)
{
if(1==pButton[i].GetCheck())
{
CString strText;
pEdit[i].GetWindowText(strText);
…………//自己添加处理
}
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询