measurestring如何让Label的背景透明(小技巧)

measurestring  时间:2021-07-05  阅读:()

VC里或C#里的graphics库里的emSize到底是什么意思?

就是字体大小啊。

? 看附图测试,先把标签字体设置为20,作为参照,然后在按钮事件中编写绘制字符串的代码,emSize也设置为20,可以看到大小一致。

?

c# pen 如何设置车下面这样的线型呢? ->->->->-> 是一条线,然后线上面有好多个方向

Pen?p=new?Pen(Brushes.DarkGreen);? ????????????p.EndCap=?System.Drawing.Drawing2D.LineCap.Custom;好像Pen对象的(EndCap属性)线帽样式没法设置“>”样的,我下面的代码做了一个自定义的 ????????protected?override?void?OnPaint(PaintEventArgs?e) ????????{ ????????????base.OnPaint(e); ????????????Pen?p?=?new?Pen(Brushes.DarkGreen); ????????????p.EndCap?=?System.Drawing.Drawing2D.LineCap.Custom; ????????????p.Width?=?1; ????????????string?line?=?"-"; ????????????string?arrow?=?">"; ????????????SizeF?sfLine?=?e.Graphics.MeasureString(line,?this.Font); ????????????SizeF?sfArrow?=?e.Graphics.MeasureString(arrow,?this.Font); ????????????for?(int?i?=?0;?i?如何让Label的背景透明(小技巧)问题很简单不是吗,把Label的BackColor设置成Color.Transparent,然后它就成透明了!表面上看是这样的,但实际上是让它的背景与它的Parent控件的背景一样,这样看上去就是透明的了,实际在它的OnPaintBackGround中,还是完成了一样的绘图工作。

而它这个Label在一个图片上时,你会发现它又变得不透明了,它的背景颜色与PictureBox的背景颜色是一样的。

this.SetStyle(ControlStyles.SupportsTransparentBackColor,true); 其结果与设置背景颜色是一样的,在图片上还是不能透明。

于是我想自己重新写一个透明的label,决定从原来的Label派生,在背景透明时,不去画背景,而只画文字。

直接重载OnPaint和OnPaintBackground两个函数,结果发现背景变成黑色的了。

郁闷!当OnPaintBackground函数什么也不做时,它实际上用默认的黑色给画了背景。

其实我想要的就是让主窗口忽略Label的背景,用原来区域上的图形来绘制该控件的背景。

但问题是:我没有办法得到主窗口的给定区域的背景。

想用Graphics.FromHwnd,结果是在取得Graphic的时候出现运行时错误,更别说取得图片区域了。

至于其它方法,没想也不想去想了。

usingSystem;usingSystem.Collections;usingSystem.ComponentModel;usingSystem.Drawing;usingSystem.Data;usingSystem.Windows.Forms;namespaceWebb.InstantReplay.PublicControls.UIControls{/// <summary///SummarydescriptionforTransparentLabel2./// </lassTransparentLabel2:System.Windows.Forms.PictureBox{//FieldsprivatePoint_Location=newPoint(0,0);//PropertiespublicPointTextLocation{get{returnthis ._Location;}set{this ._Location=value;}}[Browsable(true)]newpublicstringText{get{returnbase .Text;}set{base .Text=value;}}[Browsable(true)]newpublicFontFont{get{returnbase .Font;}set{base .Font=value;}}//publicTransparentLabel2(){}protectedoverridevoidOnPaint(PaintEventArgse){base .OnPaint(e); SizeFm_size= e.Graphics.MeasureString(this .Text, this .Font); e.Graphics.DrawString(this .Text, this .Font,Brushes.Black,

2021年恒创科技618活动:香港/美国服务器/云服务器/高防全场3折抢购

2021年恒创科技618活动香港美国服务器/云服务器/高防全场3折抢购,老客户续费送时长,每日限量秒杀。云服务器每款限量抢购,香港美国独服/高防每款限量5台/天,香港节点是CN2线路还不错。福利一:爆品秒杀 超低价秒杀,秒完即止;福利二:云服务器 火爆机型 3折疯抢;福利三:物理服务器 爆款直降 800元/月起;福利四:DDOS防护 超强防御仅 1750元/月。点击进入:2021年恒创科技618活...

[6.18]DogYun:充100送10元,态云7折,经典云8折,独立服务器月省100元,幸运大转盘最高5折

DogYun是一家2019年成立的国人主机商,提供VPS和独立服务器租用等,数据中心包括中国香港、美国洛杉矶、日本、韩国、德国、荷兰等,其中VPS包括常规VPS(经典云)和按小时计费VPS(动态云),使用自行开发的面板和管理系统,支持自定义配置,动态云各个硬件独立按小时计费,带宽按照用户使用量计费(不使用不计费)或者购买流量包,线路也可以自行切换。目前商家发布了6.18促销方案,新购动态云7折,经...

简单测评v5.net的美国cn2云服务器:电信双程cn2+联通AS9929+移动直连

v5.net一直做独立服务器这块儿的,自从推出云服务器(VPS)以来站长一直还没有关注过,在网友的提醒下弄了个6G内存、2核、100G SSD的美国云服务器来写测评,主机测评给大家趟雷,让你知道v5.net的美国云服务器效果怎么样。本次测评数据仅供参考,有兴趣的还是亲自测试吧! 官方网站:https://v5.net/cloud.html 从显示来看CPU是e5-2660(2.2GHz主频),...

measurestring为你推荐
西安论坛有没有谁被西安论坛活动忽悠过的啊?网关和路由器的区别网关和路由器有什么区别调度系统生产调度系统索引超出了数组界限什么是索引超出了数组界限spawning在c语言编译时出现Error spawning cl.exe,是怎么回事?mediasres什么意思qq业务中心QQ业务办理菜霸电视剧《你是我的生命》演员表水表读数家用水表怎么读数toolstripc#中 (ToolStrip)控件是做什么用的?
免费网站空间 什么是域名 西安域名注册 查询ip地址 科迈动态域名 香港ufo Dedicated php主机 轻博客 表单样式 双11抢红包攻略 lamp配置 免费个人网站申请 ibox官网 免费网站申请 坐公交投2700元 admit的用法 美国免费空间 昆明蜗牛家 idc查询 更多