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,

AkkoCloud(60元/月 ),英国伦敦CN2 1核 768 MB 内存 10 GB SSD 硬盘 600GB 流量 英国伦敦CN2 1核  1.5G  300Mbps

官方网站:https://www.akkocloud.com/AkkoCloud新品英国伦敦CN2 GIA已上线三网回程CN2 GIA 国内速度优秀.电信去程CN2 GIALooking Glass:http://lonlg.akkocloud.com/Speedtest:http://lonlg.akkocloud.com/speedtest/新品上线刚好碰上国庆节 特此放上国庆专属九折循环优惠...

TMThosting:VPS月付55折起,独立服务器9折,西雅图机房,支持支付宝

TMThosting发布了今年黑色星期五的促销活动,即日起到12月6日,VPS主机最低55折起,独立服务器9折起,开设在西雅图机房。这是一家成立于2018年的国外主机商,主要提供VPS和独立服务器租用业务,数据中心包括美国西雅图和达拉斯,其中VPS基于KVM架构,都有提供免费的DDoS保护,支持选择Windows或者Linux操作系统。Budget HDD系列架构CPU内存硬盘流量系统价格单核51...

远程登录VNC无法连接出现

今天有网友提到自己在Linux服务器中安装VNC桌面的时候安装都没有问题,但是在登录远程的时候居然有出现灰色界面,有三行代码提示"Accept clipboard from viewers,Send clipboard to viewers,Send primary selection to viewers"。即便我们重新登录也不行,这个到底如何解决呢?这里找几个可以解决的可能办法,我们多多尝试。...

measurestring为你推荐
weakhashmap在Java中ArrayList、LinkedList、HashMap的区别是什么策略组组策略是什么,命令是什么???qq号查询现成的qq号和密码查询oracle索引oracle表加索引有什么用? 请举一个例子说明谢谢天融信防火墙都说天融信的产品不错,那天融信的下一代防火墙真的是当今最好的防火墙产品了吗?丁奇赛尔号丁奇技能表,带等级,刷什么学习力好?smartupload为什么使用smartupload执行上传保存操作时用这句smart.save("upload")失败用smart.save("/upload")成功faq是什么意思fans是什么意思?弹幕网站A站B站网址是什么,国内很出名嗎?有什么网站特点..相似图片搜索怎么找手机上的一张相似图片?
香港服务器租用 什么是域名地址 adman 美元争夺战 info域名 patcha 免费个人空间申请 服务器维护方案 789电视网 北京双线 秒杀汇 网络空间租赁 美国网站服务器 免费cdn 江苏双线服务器 沈阳主机托管 畅行云 服务器论坛 ncp是什么 ipower 更多