我想在按钮上写字 ,怎么写的地方总是错的
CPaintDC dc(this);
GetDlgItem(IDC_BUTTON_COMMUNICATE)->GetClientRect(&myRect);
ClientToScreen(&myRect);
dc.DrawText(str,8,&myRect,DT_CENTER);
CPaintDC dc(this);
GetDlgItem(IDC_BUTTON_COMMUNICATE)->GetClientRect(&myRect);
ClientToScreen(&myRect);
dc.DrawText(str,8,&myRect,DT_CENTER);
解决方案 »
- 关于视频传输中的多线程编程
- avi打开后,stream的bmp头文件信息缺失
- ████████新手的关于ODBC连接数据库的疑问████████████████
- 那位牛兄谈谈ace和ice阿,各有啥优缺点。
- 请教一个关于类型判断的问题!谢谢!急急急急!
- vc中如何处理点播系统的原唱及伴唱?
- 大侠们,小的有请~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- 一个狂郁闷的问题!!
- 菜鸟求助。。。望大家帮忙。。。扰了^_^
- 请问如何确定Visual Studio编译后生成的文件那些是程序运行所必需的?
- 怎样将3.245575e-010写入表中
- 请问要用什么函数来初始化列表框呢?
CPaintDC 只在OnPaint时用
我先将一张图load到button上,作为按钮的背景色,然后就发现按钮的标题显示不出来了(标题是变化的,比如说第一次是“开始“ 夏诗词显示就是“停止“了)
用SetWindowText()和DrawText()(是在OnPaint中)都不能显示,
请问这种情况下,是不是只有用自绘按钮
ButtonST不错 就用它吧
还有一个XP风格的 叫Xp....
上Codeproject上看看 就知道了
1、利用父窗口客户区:
CPaintDC dc(this);
GetDlgItem(IDC_BUTTON_COMMUNICATE)->GetClientRect(&myRect);
GetDlgItem(IDC_BUTTON_COMMUNICATE)->ClientToScreen(&myRect);<----****
ScreenToClient(&myRect); <----****
dc.DrawText(str,8,&myRect,DT_CENTER);
2、利用按钮客户区:
CDC *pDC=GetDlgItem(IDC_BUTTON_COMMUNICATE)->GetDC();
GetDlgItem(IDC_BUTTON_COMMUNICATE)->GetClientRect(&myRect);
pDC->DrawText(str,8,&myRect,DT_CENTER);
GetDlgItem(IDC_BUTTON_COMMUNICATE)->ReleaseDC(pDC);
GetDlgItem(IDC_BUTTON_COMMUNICATE)->ValidateRect(NULL); <----****