winform 中 按钮的背景已经设置透明了,可是运行时鼠标移到按钮上是,还是出现白色边框,怎么办啊?急急急
答案:2 悬赏:50 手机版
解决时间 2021-03-19 10:44
- 提问者网友:心如荒岛囚我终老
- 2021-03-18 21:28
winform 中 按钮的背景已经设置透明了,可是运行时鼠标移到按钮上是,还是出现白色边框,怎么办啊?急急急
最佳答案
- 五星知识达人网友:躲不过心动
- 2021-03-18 22:54
用label
全部回答
- 1楼网友:渊鱼
- 2021-03-18 23:01
在有时候我们为了实现软件的美观,我们需要把窗体的边框隐藏,但是问题也会随之而来,在属性中设置了formborderstyle应该为none,边框便可以隐藏,但是我们在使用软件时却无法拖动窗体,那么我们该如何解决这个问题呢。其实代码很简单,只要override wndproc方法便可。在无边框窗体的代码中加入下面的protected override void wndproc(ref message m)方法便可。具体代码如下:
using system;
using system.windows.forms;
namespace windowsformsapplication1
{
public partial class form1 : form
{
public form1()
{
initializecomponent();
}
#region 移动窗体
///
/// 重写wndproc方法,实现窗体移动和禁止双击最大化
///
/// windows 消息
protected override void wndproc(ref message m)
{
switch (m.msg)
{
case 0x4e:
case 0xd:
case 0xe:
case 0x14:
base.wndproc(ref m);
break;
case 0x84://鼠标点任意位置后可以拖动窗体
this.defwndproc(ref m);
if (m.result.toint32() == 0x01)
{
m.result = new intptr(0x02);
}
break;
case 0xa3://禁止双击最大化
break;
default:
base.wndproc(ref m);
break;
}
}
#endregion
}
}
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯