下面的程序实现:
(1)按下键盘左键减少数值并用控件显示
(2)按下键盘右键增加数值并用控件显示
其中的刷新就用到了局部刷新,只刷新显示数字的控件
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21BOOL CEditTestDlg::PreTranslateMessage(MSG* pMsg) { if (pMsg->message == WM_KEYDOWN) { if (pMsg->wParam == VK_RIGHT) { tmp++; m_value.Format(_T("%d"),tmp); GetDlgItem(IDC_EDIT1)->SetWindowText(m_value); return TRUE; } if (pMsg->wParam == VK_LEFT) { tmp--; m_value.Format(_T("%d"),tmp); GetDlgItem(IDC_EDIT1)->SetWindowText(m_value); return TRUE; } } return CDialog::PreTranslateMessage(pMsg); }
以前一直使用UpdateData()函数更新,但是这次发现GetDlgItem()更适合现在的情况,只更新该控件而不会刷新其他数据。
参考:http://www.cnblogs.com/skywatcher/p/3750059.html
最后
以上就是刻苦花瓣最近收集整理的关于MFC局部刷新 只刷新单个控件 只刷新1个控件的全部内容,更多相关MFC局部刷新内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复