首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VC/MFC >

交叉Dalog有关问题

2012-03-09 
交叉Dalog问题在一个界面Dalog1中弹出另外一个界面Dalog2,界面Dalog2中有一个IDC_EDIT1,要在弹出瞬间IDC_E

交叉Dalog问题
在一个界面Dalog1中弹出另外一个界面Dalog2,界面Dalog2中有一个IDC_EDIT1,要在弹出瞬间IDC_EDIT1在最左边获得光标.等待输入数据.当数据输送完毕自动关闭Dalog2,此时在Dalog1中能获取IDC_EDIT1的数据.
我在获取光标时,
UpdateData(true);
m_Edit_Scan_SN.SetFocus();
UpdateData(false);
但是得不到光标.不知道应该如何处理?
如果在Dalog1中直接获取IDC_EDIT1的数据,IDC_EDIT1属于Dalog2;如果先在Dalog2中获取IDC_EDIT1,再将数据传到Dalog1,但是不知道如何处理获取数据和输入数据的先后顺序?
不知道应该怎么设计?请高手帮忙!

[解决办法]
要在弹出瞬间IDC_EDIT1在最左边获得光标
--
在设计时,调整tab次序,把IDC_EDIT1设为第一位

当数据输送完毕自动关闭Dalog2
--
相应编辑框的WM_CHAR,或在PreTranslateMessage函数里拦截VT_RETURN,然后调用OnOK

再将数据传到Dalog1
--
if (dlg2.DoModal() == IDOK)
{
strEdit1 = dlg2.m_strEdit1;//把IDC_EDIT1的内容复制到m_strEdit1里
}

热点排行