请问怎样在一副位图中写字?
请问:
我现在使用的是一个对话框,然后在对话框中贴了一张背景位图。我想在这张位图上写字。
但是,现在有一个问题是:我定义好CFont类时,所写的字有背景,即把下面的位图给破坏了。
请问,如何写无背景的字?
非常感谢!
问题点数:20、回复次数:9Top
1 楼liugy(不知道的太多)回复于 2002-07-02 09:37:55 得分 0
透明就可以了Top
2 楼braveyh(勇者无敌)回复于 2002-07-02 09:49:42 得分 0
请问怎样透明?Top
3 楼bibye80(白白)回复于 2002-07-02 09:53:11 得分 10
SetBkMode(TRANSPARENT)Top
4 楼brave_yh(中华孽龙)回复于 2002-07-02 10:23:14 得分 0
谢谢Top
5 楼brave_yh(中华孽龙)回复于 2002-07-02 10:30:13 得分 0
不行啊,有黑色的背景!Top
6 楼brave_yh(中华孽龙)回复于 2002-07-02 10:41:28 得分 0
我的程序如下:
CDC* pDC;
pDC = this->GetDC();
CString str;
CRect rect;
CFont *pNewFont;
CFont *pOldFont;
//设置字体
pNewFont = new CFont;
pNewFont->CreateFont(14, // nHeight
6, // nWidth
0, // nEscapement
0, // nOrientation
FW_BOLD, // nWeight
FALSE, // bItalic
FALSE, // bUnderline
0, // cStrikeOut
ANSI_CHARSET, // nCharSet
OUT_DEFAULT_PRECIS, // nOutPrecision
CLIP_DEFAULT_PRECIS, // nClipPrecision
DEFAULT_QUALITY, // nQuality
DEFAULT_PITCH | FF_SWISS, // nPitchAndFamily
"宋体"); // lpszFacename
pDC = this->GetDC();
pOldFont = pDC->SelectObject(pNewFont);
//设置颜色
pDC->SetBkColor(TRANSPARENT);
pDC->SetTextColor(RGB(0,255,0));
for(i=0;i<g_nCards;i++)
{
str.Format("%d",i);
pDC->TextOut(rectBtn[0][i].left + 5 , rectBtn[0][i].top + 3 ,str); //显示时间
}
this->ReleaseDC(pDC); //移除pDCTop
7 楼pippo(Jiang)回复于 2002-07-02 10:47:52 得分 0
关注一下~~~~~~~~~~~~Top
8 楼Luxm(夕阳西下……)回复于 2002-07-02 11:31:25 得分 10
将pDC->SetBkColor(TRANSPARENT)换成
pDC->SetBkMode(TRANSPARENT)试试。Top
9 楼brave_yh(中华孽龙)回复于 2002-07-02 11:39:26 得分 0
太感谢你Luxm(向明)了,谢谢!!!!!!!!!!Top




