和大家讨论一个简单的问题,如果最高效率的在对话框上画各种文本?(不用STATIC和EDIT之类的控件)?
Windows + VC6.0
当然,一般的做法是
在WM_PAINT消息响应函数中,使用TextOut(HWND, iX, iY, STRING, iLen);来画。
通过this->m_hWnd获得Handle, GetDC(m_hWnd)获得HDC,CreateFont能创建HFONT, SelectObject将HFONT选入m_hWnd的HDC中.还有其他的设置等等.
不过这样的话,在WM_PAINT的消息响应函数中的话,它总是不停的执行。这样的话,就白白浪费了CPU,如果只在OnDialogInit()函数中TextOut()的话。把窗口遮住一部分再移开,遮住的部分就不肯显示了。肯定也不行。而遮住窗口再移开发出的消息就是WM_PAINT吧,这样就成了矛盾。
现在请问最好是怎么做呢?
谢谢