映射消息
2016-05-24 14:15
302 查看
自动消息映射:直接打开写就行:
void CDEMO12Dlg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
SetDlgItemText(IDC_EDIT_INPUT,_T(" "));
}手动消息映射:
首先在BEGIN_MESSAGE_MAP(CDEMO12Dlg, CDialogEx)里添加
ON_BN_CLICKED(IDC_BTN2, &CDEMO12Dlg::OnBnClickedButton2)
然后去头文件中声明:
afx_msg void OnBnClickedButton2();
最后去定义函数
void CDEMO12Dlg::OnBnClickedButton2()
{
// TODO: 在此添加控件通知处理程序代码
SetDlgItemText(IDC_EDIT_INPUT,_T(" "));
}
改变背景颜色,添加消息函数:
BOOL CDEMO12Dlg::OnEraseBkgnd(CDC* pDC)
{
// TODO: 在此添加消息处理程序代码和/或调用默认值
CRect rect;
GetClientRect(rect);
CBrush brush;
brush.CreateSolidBrush(RGB(100,150,200));
pDC->FillRect(&rect,&brush);
return true;
return CDialogEx::OnEraseBkgnd(pDC);
}
在静态文本中显示输入字符个数:
在编辑框的控件事件里选择函数:
void CDEMO12Dlg::OnEnChangeEditInput()
{
// TODO: 如果该控件是 RICHEDIT 控件,它将不
// 发送此通知,除非重写 CDialogEx::OnInitDialog()
// 函数并调用 CRichEditCtrl().SetEventMask(),
// 同时将 ENM_CHANGE 标志“或”运算到掩码中。
// TODO: 在此添加控件通知处理程序代码
HWND hEdit=::GetDlgItem(m_hWnd,IDC_EDIT_INPUT);
int nLen;
nLen=::SendMessage(hEdit,WM_GETTEXTLENGTH,0,0);
TCHAR szBuf[128]={0};
_stprintf(szBuf,_T("已输入 %d "),nLen);
SetDlgItemText(IDC_STATIC,szBuf);
}
相关文章推荐
- U 盘全新安装 Mac OS X 提示【这个“安装 OS X ……”应用程序副本不能验证】的解决方法
- javascript之BOM浏览器对象模型引入
- Android悬浮窗口的实现
- javascript之BOM浏览器对象模型引入
- flexslider 图片轮播插件参数
- Android procrank && dumpsys meminfo使用详解
- 安卓开发中Theme.AppCompat.Light的解决方法
- C/C++中字符串存储位置
- 自定义卡劵之——CardVoucherView
- hdu 1595 find the longest of the shortest(最短路+枚举)
- IOS 适配的几种模式
- Spring + Struts2 + Hibernate整合
- Setting下面增加搜索(SearchIndexProvider)
- MySQL中的视图操作
- go提交json、获取json、解析json
- PowerPoint2007打开大型或复杂简报时速度慢
- Laravel 5.2.* 扩展包开发(一)
- STL之vector
- 使用Jenkins搭建持续集成服务
- Android内存泄漏分析及调试