我在SDI里面加了背景图片,再动态生成CStatic,还在CStatic里显示了字,但看不见显示的字。我想是不是由于背景颜色的问题造成的。请各位指教。谢谢
解决方案 »
- 不得不看的贴子!*******************
- 为什么CImageList 执行ADD失败?
- 请您一定要帮忙呀.当点击一个图片或者flash文件时,如何得到网页中图片和flash文件的地址?我只知道用IhtmlDocument2接口.
- 如何修改文件的只读属性,使之变得可写?
- 为什么我的VC有问题
- 请问我想把CTabCtrl设计成透明,以便把桌面的背景显示出来,该怎么办呀???
- 该过年了,大家能那到多少奖金,统计一下,来者有分!
- 没有人会吗?
- 求问关于“找到一个或多个多重定义的符号”的问题
- 不让控件焦点失去失去。。。
- 菜鸟刚会用ado连接access,还不知道怎么连接sql server2000,请高手帮下忙...
- 为什么在一个类中添加其它自定义的类对象时总出现link2001的错误呢
背景是在CBimapView::OnEraseBkgnd(CDC* pDC)中加入的,代码是:
{ CView::OnEraseBkgnd(pDC);
CDC dcMem;
CClientDC dc(this);
HBITMAP hbit;
CRect rect;
GetClientRect(rect);
dcMem.CreateCompatibleDC(&dc);
hbit = (HBITMAP)dcMem.SelectObject(&bitmap);
GetDC()->BitBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,SRCCOPY);
}
在CBimapView::OnInitialUpdate()中动态创建CStatic,显示文字,这次文字是看见的。
void CBimapView::OnInitialUpdate()
{
CView::OnInitialUpdate();
// TODO: Add your specialized code here and/or call the base class
CRect rect(10,10,200,40);
m_pCtrlBtn=new CStatic;
m_pCtrlBtn->Create("1234",WS_VISIBLE|WS_BORDER,rect,this,1000);
m_pCtrlBtn->ShowWindow(SW_SHOW);
}
但又出现了问题,就是当击活其它程序窗口后,再击活本程序,那些文本框和文字就不见了。
这是不是跟窗口的重画有关?可是我在
void CBimapView::OnDraw(CDC* pDC) 中进行
m_pCtrlBtn->ShowWindow(SW_SHOW);不能解决问题
请问各位高手,应该如何解决这个问题?
要设置字体,要使用CFont.CreateFont(...)