动态创建控件(EDIT)添加关联变量

转自:http://blog.sina.com.cn/s/blog_603596e701013o5t.html

我们知道如果在资源视图中添加了某个控件之后,如果想把它关联一个变量的话,可以使用类向导中来添加关联变量,但是动态创建的按钮如何让其关联变量呢?

1、在CMyDlg.cpp前面定义变量:

int num1;                       //定义   动态编辑框变量
    int num2;
    int num3;

CEdit m_edit1 ;                 // 定义    创建动态编辑框
    CEdit m_edit2 ;
    CEdit m_edit3 ;
 

2、在DataExchang里关联动态控件与 变量的关系

void CMyDlg::DoDataExchange(CDataExchange* pDX)
{
 CDialog::DoDataExchange(pDX);
 //{{AFX_DATA_MAP(CMyDlg)
  // NOTE: the ClassWizard will add DDX and DDV calls here
 
 DDX_Text(pDX,10001,num1);                  //   添加数据关联 动态控件 1000x 系列 与numx系列的对应
 DDX_Text(pDX,10002,num2);
 DDX_Text(pDX,10003,num3);

//  DDX_Text(pDX,IDC_EDIT1,num1);             //这里不能用 字母表示的控件文字  用字          
    //  DDX_Text(pDX,IDC_EDIT2,num2);
   //  DDX_Text(pDX,IDC_EDIT3,num3);

 //}}AFX_DATA_MAP
}

3、在Init里创建Edit

BOOL CMyDlg::OnInitDialog()
{

 //创建动态对话框  控件号用数字表示 CRect()里为坐上和右下的坐标
m_edit1.Create( WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,CRet(10,10,100,30),this,10001 );  
m_edit2.Create( WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,CRect(10,50,100,70),this,10002); 
m_edit3.Create( WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,CRect(10,90,100,110),this,10003); 


   //创建的对话框  ID号不能为 字母

 

 CDialog::OnInitDialog();

 // Add "About..." menu item to system menu.

 ......

}

 

4、OK按钮响应动作

void CMyDlg::OnOK()
{
 // TODO: Add extra validation here
    UpdateData(true); 
    num3=num1+num2;
    UpdateData(false);  
 
}

 

效果如下图:

  动态创建控件(EDIT)添加关联变量

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值