在MFC里创建 几个编辑框分别是
IDC_EDIT_1
.
.
.
IDC_EDIT_10我想用下面的函数循环向这10个编辑框里添加内容
经过我的仔细琢磨,用循环非常快,只要写一行代码就可以代替10行SetDlgItemText(IDC_EDIT_+(i),“内容“)现在遇到一个问题这里应该怎么写 IDC_EDIT_+(i) 

解决方案 »

  1.   


    IDC_EDIT_1
    ...只是定义的一个无符号整数的宏
    你这样不能保证你在宏里面定义的整数是连续的而且 使用你这种方法(连接字符串,然后形成ID)应该是无法实现的如果可以实现 也无法保证程序的正确性 因为在某些情况下 编译器会自己修改控件的ID 使其连续等等
      

  2.   

        hWnd = ::FindWindowA(NULL,"");
    hBtn = ::FindWindowEx(hWnd,NULL,NULL,TEXT("IDC_EDIT_1"));
    IDn = ::GetDlgCtrlID();//取得ID不知道这样是否可行?
      

  3.   

    楼主如果真的需要连续起来处理这些控件 鄙人建议使用CEdit::Create() 动态创建这些编辑框 参数中的ID 连续起来 这样比较简单