|
省的自己以后忘了
- MFC编程之编辑框控件:CEdit --Edit Control 可编辑文本的控件
- 编辑框控件属性上 多行true,想要返回 ENTER键(换行)true
- CWnd::GetDlgItemText 获取控件的文本 GetDlgItemText函数向控件发送WM_GETTEXT消息。
- CWnd::SetDlgItemText 设置对话框控件的文本 SetDlgItemText向给定的控件发送一条WM_SETTEXT消息。
- CString::Format格式化字符串
- CWnd::GetDlgItem 获得指定的对话框中具有指定ID的控件
- CWnd::GetWindowText 返回窗口的文本或标题文字(如果有)
- CWnd::SetWindowText 将窗口的文本或标题文字(如果有)设为指定的文本
- CWnd::GetDlgItemInt 将给定对话框中控件的文本转换为整数
- CWnd::SetDlgItemInt 将控件的文本设为代表一个整数的字符串
- 编辑框Edit七种方法访问控件
- 方法一:
- 读编辑框数据:GetDlgItem(IDC_EDIT)->GetWindowText(string ,length);
- 函数原型:Int GetWindowText(HWND hWnd,LPTSTR lpString,Int nMaxCount)
- 写编辑框数据:GetDlgItem(IDC_EDIT)->SetWindowText(string);
- int n1, n2, n3;
- _TCHAR str1[10], str2[10], str3[10];
- GetDlgItem(IDC_EDIT1)->GetWindowText(str1,10);
- GetDlgItem(IDC_EDIT2)->GetWindowText(str2, 10);
- n1 = _ttoi(str1);
- n2 = _ttoi(str2);
- n3 = n1 + n2;
- _itot_s(n3, str3, 10); //10这个是十进制,16是十六进制 8进制
- GetDlgItem(IDC_EDIT3)->SetWindowText(str3);
- 方法二:
- 读编辑框数据:GetDlgItemText(IDC_EDIT,string,length);
- 写编辑框数据:SetDlgItemText(IDC_EDIT,string);
- int num1, num2, num3;
- TCHAR ch1[12], ch2[12], ch3[12];
- GetDlgItemText(IDC_EDIT2, ch1, 12);
- GetDlgItemText(IDC_EDIT3, ch2, 12);
- num1 = _ttoi(ch1);
- num2 = _ttoi(ch2);
- num3 = num1 + num2;
- _itot_s(num3, ch3, 10);
- SetDlgItemText(IDC_EDIT4, ch3);
- 方法三:
- 读编辑框数据:GetDlgItemInt(IDC_EDIT);
- 写编辑框数据:SetDlgItemInt(IDC_EDIT,value);
- int num1, num2, num3;
- num1 = GetDlgItemInt(IDC_EDIT2);
- num2 = GetDlgItemInt(IDC_EDIT3);
- num3 = num1 + num2;
- SetDlgItemInt(IDC_EDIT4, num3);
- 方法四:把控件和整形变量相关联
- 编辑框添加变量关联在一起类型 value值 变量类型:int 头文件:变量类型,名字
- DoDataExchange为对话框提供数据交换和验证信息
- DDX是数据交换,DynamicDataeXchange,DDV是数据验证DynamicDataVerify
- 调用DDV_MinMaxInt以检验与value相关的控件中的值是否介于minVal和maxVal之间
-
- DDV_MinMaxInt(pDX, m_num1, 1, 1000);
- DDX_Text(pDX, IDC_EDIT3, m_num2);
- UpdateData(true); 从编辑框控件获取数据到关联变量中,
- m_num3 = m_num1 + m_num2;
- UpdateData(FALSE); 更新数据到编辑框控件
- 方法五:把控件和控件变量相关联
- DDX_Control将控件与变量绑定
- 变量类型:CEdit 类别:control控件 value值 头文件:CEdit 名字
- DDX_Control(pDX, IDC_EDIT2, m_edit1);
-
- int num1, num2, num3;
- TCHAR ch1[12], ch2[12], ch3[12];
- m_edit1.GetWindowTextW(ch1, 12);
- m_edit2.GetWindowTextW(ch2, 12);
- num1 = _ttoi(ch1);
- num2 = _ttoi(ch2);
- num3 = num1 + num2;
- _itot_s(num3, ch3, 10);
- m_edit3.SetWindowTextW(ch3);
- 方法六:
- Windows API宏,在WinUser.h中根据是否已定义Unicode被定义为SendMessageW或SendMessageA
- 这两个函数将指定的消息发送到一个或多个窗口。此函数为指定的窗口调用窗口程序,直到窗口程序处理完消息再返回。
- 而和函数PostMessage不同,PostMessage是将一个消息寄送到一个线程的消息队列后就立即返回。
- CWindow::SendMessage 通过发送WM_GETTEXT命令获得EDIT中的信息
- 将 WM _ GETTEXT 消息发送到非文本静态控件(例如静态位图或静态图标控件)时,不会返回字符串值。 相反,它返回零
- WM_SETTEXT 应用程序发送此消息来设置一个窗口的文本
- 发送消息函数:SendMessage();
- 读编辑框数据: ::SendMessage(GetDlgItem(IDC_EDIT)->m_hWnd,WM_GETTEXT,length,(LPARAM)ch);
- 写编辑框数据: ::SendMessage(GetDlgItem(IDC_EDIT)->m_hWnd,WM_SETTEXT,0,(LPARAM)ch);
- 其中GetDlgItem(IDC_EDIT)->m_hWnd)为编辑框窗口句柄
-
- int num1, num2, num3;
- TCHAR ch1[12], ch2[12], ch3[12];
- ::SendMessage(GetDlgItem(IDC_EDIT2)->m_hWnd, WM_GETTEXT, 12, (LPARAM)ch1);
- ::SendMessage(GetDlgItem(IDC_EDIT3)->m_hWnd, WM_GETTEXT, 12, (LPARAM)ch2);
- num1 = _ttoi(ch1);
- num2 = _ttoi(ch2);
- num3 = num1 + num2;
- ::SendMessage(GetDlgItem(IDC_EDIT4)->m_hWnd, WM_SETTEXT, 0, (LPARAM)ch3);
-
- 方法七:
- 发送消息函数:SendDlgItemMessage();
- SendDlgItemMessage()相当于是将SendMessage()和GetDlgItem(IDC_EDIT)->m_hWnd合并而来的;
- 读编辑框数据:SendDlgItemMessage(IDC_EDIT,WM_GETTEXT,12,(LPARAM)ch);
- 写编辑框数据:SendDlgItemMessage(IDC_EDIT,WM_SETTEXT,0,(LPARAM)ch);
-
- int num1, num2, num3;
- TCHAR ch1[12], ch2[12], ch3[12];
- SendDlgItemMessage(IDC_EDIT2, WM_GETTEXT, 12, (LPARAM)ch1);
- SendDlgItemMessage(IDC_EDIT3, WM_GETTEXT, 12, (LPARAM)ch2);
- num1 = _ttoi(ch1);
- num2 = _ttoi(ch2);
- num3 = num1 + num2;
- SendDlgItemMessage(IDC_EDIT4, WM_SETTEXT, 0, (LPARAM)ch3);
复制代码 |
评分
-
查看全部评分
上一篇: C++ 最快的读取中文文件(UTF-8)的方式下一篇: 拆分窗口后,窗口里的初始化没出来
|