项目是个单文档类型,然后在视图view中通过create创建了一个静态文本,view的背景是一张图片,现在的需求是让这个静态文本背景透明,以显示文本所在背景色。我重载了OnCtlColor,在里面写了 pDC->GetBkMode(TRANSPARENT);但是那个文本还是没有透明,为什么呢?怎么处理才能让文本显示所在view的背景色呢?
解决方案 »
- 日本TOTA托塔黑白摄像机TOTA-400II
- 【请教】最近在试验vc2008编程 遇到一些问题请各位老师指导
- 简单问题 A和B程序90%相同 仅有10%界面不同。如何维护一份代码。
- 切分视图不成功,大侠请给出email,我把代码发过去,帮我看看
- 使用ODBC编写数据库程序,如果要在其他机器上运行,拷贝了应用程序和数据库文件,重新建立数据源就可以了吗?
- 是否需要关闭这些对象?
- 有关鼠标消息的问题,提供高分
- 求助,想写个获取文件版本号的小程序,出的错误不知如何解决
- 我的英文还凑合,那么我应该选择<visual c++技术内幕>4 中文版,还是 5英文版?(众所周知,5中文版翻译太差)
- VC用了外部控件在关联控件时程序没报错却运行不起来了
- UI求助!!想知道WIN7中那个向下向上的箭头是怎么实现的?
- CMenu checked 问题
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)::GetStockObject(NULL_BRUSH);
.....
但是文本还是没有透明。
{
HBRUSH hbr = CView::OnCtlColor(pDC, pWnd, nCtlColor);
// TODO: Change any attributes of the DC here
if (nCtlColor == CTLCOLOR_STATIC && pWnd->GetDlgCtrlID() == 0x111)
{
pDC->SetBkMode(TRANSPARENT);
return (HBRUSH)::GetStockObject(NULL_BRUSH);
}
// TODO: Return a different brush if the default is not desired
return hbr;
}
------------------------------------------------------------------------