winform怎么制作圆形按钮? 有需求,要圆形按钮 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 自己怎么做控件,放picturebox的话那几个角还是有的 自定义控件,用png格式的图片为bgimage,控件背景色透明 如果用picturebox里面放个圆形图片,虽然四个角看不到了,单击四个角还是会触发单击事件。这样是不是不太真实了? protected override void WndProc(ref Message m){ base.WndProc(ref m); if (m.Msg == 0xf || m.Msg == 0x133) { IntPtr hDC = GetWindowDC(m.HWnd); if (hDC.ToInt32() == 0) { return; } //边框Width为1个像素 System.Drawing.Pen pen = new Pen(this._BorderColor, 1); ; if (this._HotTrack) { if (this._IsMouseOver) { pen.Color = this._BorderColor; } else { pen.Color = Color.FromArgb(199, 219, 229); } } //绘制边框 System.Drawing.Graphics g = Graphics.FromHdc(hDC); g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias; g.DrawRectangle(pen, 0, 0, this.Width - 1, this.Height - 1); pen.Dispose(); //返回结果 m.Result = IntPtr.Zero; //释放 ReleaseDC(m.HWnd, hDC); }}上面是对边框进行了绘制,同理背景也要画成圆的。如果你要圆的就用g.DrawEllipse(pen,x,y,r,r)想办法吧。没直接画圆的就不贴代码了。 c#的委托 ODBC能够连接,调用ODBC时却无法连接数据库 windows form 登录问题 读写cookie 多线程下,如何保证一个线程的一组操作不被中断 谁有个日志管理系统呢,给我分享一下,非常感激! 【求助】C# GridView 以及 RowFilter的问题 求助,remoting服务端如何检测客户端已经断开连接 求datagrid的操作? 怎样将richtextbox的图片保存为rtf格式? 求助!动网asp8.2的论坛和asp.net2.0项目结合的问题 什么是回调函数?如何调用外部的dll? 新人求指引啊!!!
protected override void WndProc(ref Message m)
{
base.WndProc(ref m);
if (m.Msg == 0xf || m.Msg == 0x133)
{
IntPtr hDC = GetWindowDC(m.HWnd);
if (hDC.ToInt32() == 0)
{
return;
}
//边框Width为1个像素
System.Drawing.Pen pen = new Pen(this._BorderColor, 1); ;
if (this._HotTrack)
{
if (this._IsMouseOver)
{
pen.Color = this._BorderColor;
}
else
{
pen.Color = Color.FromArgb(199, 219, 229);
}
}
//绘制边框
System.Drawing.Graphics g = Graphics.FromHdc(hDC);
g.SmoothingMode = System.Drawing.Drawing2D.SmoothingMode.AntiAlias;
g.DrawRectangle(pen, 0, 0, this.Width - 1, this.Height - 1);
pen.Dispose();
//返回结果
m.Result = IntPtr.Zero;
//释放
ReleaseDC(m.HWnd, hDC);
}
}上面是对边框进行了绘制,同理背景也要画成圆的。如果你要圆的就用g.DrawEllipse(pen,x,y,r,r)想办法吧。没直接画圆的就不贴代码了。