我在MFC对话框中创建了一个只读编辑框。我试图让它使用户点击编辑框,它是只读的,它打开一个文件对话框,然后使用UpdateData将该值放入文本框中。我正在捕获ON_EN_SETFOCUS
消息,但在文件对话框上按下“确定”重新生成它,所以我陷入了无限循环。单击MFC编辑框
UpdateData(TRUE);
CFileDialog fileDialog(TRUE,NULL, NULL,OFN_HIDEREADONLY|OFN_FILEMUSTEXIST, _T("Text Files(*.txt)|*.txt||"));
if(fileDialog.DoModal() == IDOK)
{
configFile=fileDialog.GetPathName(); //Note to self, this includes filename, getPathName includes filename and path.
}
else
{
return;
}
UpdateData(FALSE);
如果您对如何完成这件事有任何想法,我将非常感激。
为什么不使用按钮?一个名为'...'的小CButton用文件对话框浏览是很常见的。 – AJG85 2012-07-19 16:26:50
如果您希望在对话框中使用某些可用性,请使用AJG85的建议。没有用户会永远点击一个只读的CEdit框。 – CppChris 2012-07-19 16:41:06
做到了这一点,它的工作,有两个控制似乎是无关的,并想知道是否有一个更有效的方法来做到这一点? – James 2012-07-19 16:42:55