如何在点击确定时从对话框的输入框中读取数据? 如何在点击确定时从对话框的输入框中读取数据? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 按钮的BN_CLICKED事件中GetDlgItemText() 具体看自己了如果通过ID,那就GetDlgItemText如果绑定变量,那就UpdateData如果通过对象,那就GetWindowText int GetDlgItemText( int nID, CString& rString ) ; 额,貌似理解错楼主意思了,那就hook 木有木有,就是你这意思,CString& rString 这是什么意思? 'GetDlgItemText' : function does not take 2 parameters 嗯,你是这样的CString XXX;GetDlgItemText(这里填写控件的ID,这里填写你要保存数据的CString变量) 我完全没用mfc,新建的建的是win32 application 这样也行嘛? UINT GetDlgItemText( HWND hDlg, int nIDDlgItem, LPTSTR lpString, int nMaxCount); 第 1 个参数 hDlg 是包含控件的对话框句柄。第 2 个参数 nIDDlgItem 是控件的标识,我们就是由该标识所指的控件中获取其标题或文本。第 3 个参数 lpString 是一个缓冲区指针,该缓冲区用来存放标题或文本。第 4 个参数 nMaxCount 指出了缓冲区的最大长度。 char a[100]={0};LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam){ HWND hWnd=NULL; switch (message) { case WM_INITDIALOG: return TRUE; case WM_COMMAND: if (LOWORD(wParam) == IDC_ok1 || LOWORD(wParam) == IDCANCEL) { GetDlgItem(hWnd,IDD_DIALOG1); GetDlgItemText( hWnd,IDD_DIALOG1, a, 10 ); //GetWindowText(IDC_gamekind,a,strlen(a)); MessageBox(NULL,a,"ceshi",IDOK); //GetDlgItem(hWnd.IDD_DIALOG1)->m_hWnd; MessageBox(NULL,a,a,IDOK); EndDialog(hDlg, LOWORD(wParam)); return TRUE; } break; } return FALSE;}这样为什么a是空的?MessageBox用来查看a的值 VS2010 MFC单文档Office界面风格编程 MFC 菜单项创建对话框,怎么给对话框里的组合框添加数据 怎么会少了个类呢? 高手s: 关于CListCtrl (控件) 的问题,在线.................. 关于消息,线程问题?怪,欢迎来讨论 关于VC中开发数据库程序的问题 编译错误 vc读取access的问题 vc初学者的困惑。请大家随便聊聊! 为什么为什么为什么为什么!!!!!! 学VC真是明智的选择 GDI+怎样读取多页图片,如多页TIF图片!
如果通过ID,那就GetDlgItemText
如果绑定变量,那就UpdateData
如果通过对象,那就GetWindowText
CString XXX;
GetDlgItemText(这里填写控件的ID,这里填写你要保存数据的CString变量)
HWND hDlg,
int nIDDlgItem,
LPTSTR lpString,
int nMaxCount
);
LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam)
{ HWND hWnd=NULL;
switch (message)
{
case WM_INITDIALOG:
return TRUE; case WM_COMMAND:
if (LOWORD(wParam) == IDC_ok1 || LOWORD(wParam) == IDCANCEL)
{
GetDlgItem(hWnd,IDD_DIALOG1);
GetDlgItemText( hWnd,IDD_DIALOG1, a, 10 ); //GetWindowText(IDC_gamekind,a,strlen(a));
MessageBox(NULL,a,"ceshi",IDOK);
//GetDlgItem(hWnd.IDD_DIALOG1)->m_hWnd;
MessageBox(NULL,a,a,IDOK);
EndDialog(hDlg, LOWORD(wParam));
return TRUE;
}
break;
}
return FALSE;
}这样为什么a是空的?MessageBox用来查看a的值