graph.DrawString如何把背景去掉

danxuezx 2010-02-02 09:52:54
  WCHAR  wcClickHere[MAX_PATH] ={0};
::swprintf(wcClickHere,MAX_PATH,_T("%ls"),_T("Click Here"));
RectF layoutRectClickHere(0.0f, 0.0f, 100.0f, 20.0f);
StringFormat formatClickHere;
formatClickHere.SetAlignment(StringAlignmentNear);
SolidBrush blackBrushClickHere(Color(255, 235, 236, 238));
SolidBrush sbrClickHere(Color(255, 60, 55, 40));

graph.FillRectangle(&sbrClickHere,Rect(0,0, 100,20));
graph.DrawString(
wcClickHere ,
wcslen(wcClickHere),
&myFont,
layoutRectClickHere,
&formatClickHere,
&blackBrushClickHere);

上面的代码是在一个区域写字,现在想要把方框的背景去掉该怎么弄一下?也就是只显示字不显示背景……
...全文
136 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
你妹的特盗不 2010-02-02
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 danxuezx 的回复:]
引用 2 楼 lfs09 的回复:
graph.FillRectangle(&sbrClickHere,Rect(0,0, 100,20));
这句就在画你不要的框框吧

去掉后还是有默认的颜色。我的对话框是墨绿色……
[/Quote]

那你画这个框框时,把框框的颜色指定为你需要的就行了啊,因为你已经有背景了,所以,只要某块区域没有背景,不好弄,
nintendo_dskay 2010-02-02
  • 打赏
  • 举报
回复
有默认的颜色估计是因为你是在子窗口里面写的字吧,因为windows的窗口一般是会有一个默认的背景黑色。
只要把这个子窗口去掉,然后直接在父窗口上面DrawString就好了,因为DrawString本身是不带默认背景色的。
danxuezx 2010-02-02
  • 打赏
  • 举报
回复
自己动脑,丰衣足食
danxuezx 2010-02-02
  • 打赏
  • 举报
回复
其实我是先要画一张png图片上去,然后在图片的一个地方写字。
danxuezx 2010-02-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 lfs09 的回复:]
graph.FillRectangle(&sbrClickHere,Rect(0,0, 100,20));
这句就在画你不要的框框吧
[/Quote]
去掉后还是有默认的颜色。我的对话框是墨绿色……
你妹的特盗不 2010-02-02
  • 打赏
  • 举报
回复
graph.FillRectangle(&sbrClickHere,Rect(0,0, 100,20));
这句就在画你不要的框框吧
nintendo_dskay 2010-02-02
  • 打赏
  • 举报
回复
把FillRectangl那句代码去掉就可以了

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧