菜鸟互啄:WINFORM如何实现无聚焦框的Button按钮

当我们将一个button按钮设置如下属性时,总有一个聚焦框来困扰着我们

button1.FlatStyle = FlatStyle.Flat;

我们想要的效果是这样的:

但当使用了Tab切换焦点时 发现按钮获取焦点后 成了这个样子

这个黑框是什么鬼啊 现在就讲一下如何去掉这个聚焦框

方法一:

肯定有人想得到用label啊,当然label是可以,但它毕竟不是按钮,有些效果还得自己写….

发法二:

1.新建一个自定义控件

2.代码

public partial class BtnNoBorder : Button

{

/// <summary>

/// 构造

/// </summary>

public BtnNoBorder()

{

   InitializeComponent();

}

/// <summary>

/// 重绘

/// </summary>

/// <param name="pe"></param>

protected override void OnPaint(PaintEventArgs pe)

{

     base.OnPaint(pe);

}

/// <summary>

/// 取消聚焦框

/// </summary>

protected override bool ShowFocusCues

{

  get

    {

       return false;

    }

}

}

  

这样就搞定了,用的时候从工具箱拖这个button就可以了

具体如何把这个控件加到工具箱就不介绍了

Bye!

时间: 2024-10-12 20:02:03

菜鸟互啄:WINFORM如何实现无聚焦框的Button按钮的相关文章

winform 可拖动无边框窗体解决办法

方法一:通过重载消息处理实现. 鼠标的拖动只对窗体本身有效,不能在窗体上的控件区域点击拖动 /// <summary> /// 通过重载消息处理实现.重写窗口过程(WndProc),处理一些非客户区消息(WM_NCxxxx), /// C#中重写窗口过程不用再调用SetWindowLong API了,直接overide一个WndProc就可以了,不用声明api函数 /// 鼠标的拖动只对窗体本身有效,不能在窗体上的控件区域点击拖动 /// </summary> /// <pa

菜鸡互啄队—— 团队合作

团队GitHub地址:https://github.com/BigBugWriters/pit 队名:    菜鸡互啄 队员学号: 姓名 学号 梁华超(队长) 3116005144 沈春霖 3116005153 杨钊雄 3116005160 林健城 3116005145 林奇凯 3116005146 林贤杰 3116005147 拟作的团队项目描述:利用python实现的git客户端 队员风采:            杨钊雄: 热衷于研究计算机科学,理性冷静,乐于与人讨论技术. 擅长的技术: J

2017-4-26 winform tab和无边框窗体制作

TabIndex-----------------------------------确定此控件将占用的Tab键顺序索引 Tabstop-------------------------------指示用户是否可以使用Tab键为控件提供焦点 无边框窗体制作中,鼠标移入,移出,按下的事件:  最小化: Anchor------------------------------定义某个控件绑定到的容器的边缘,当控件锚定到某个边缘时,与制定边缘最接近的控件边缘与指定边缘之间的距离将保持不变.

第四周的菜鸡互啄

项目地址:https://github.com/BigBugWriters/pit/tree/dev 任务分配:     梁华超 与服务器交互,确定丢失的对象,推送自身 林健城 取对象的散列值  林奇凯 git索引  杨钊雄 命令行解析 提交  林贤杰 初始化仓库 沈春霖 实现HTTPS请求   项目燃尽图: 代码签入记录: 项目程序/模块的最新(运行)截图: 原文地址:https://www.cnblogs.com/Dandelion-L/p/9901803.html

C# WinForm给Button按钮或其它控件添加快捷键响应

就在这介绍三种添加快捷键的方式. 第一种Alt + *(按钮快捷键) 在大家给button.label.menuStrip等控件设置Text属性时在名字后边加&键名就可以了,比如button1.text= "确定(&A)".就会有快捷键了,这时候按Alt+A就可以执行按钮单击事件. 第二种Ctrl+*及其他组合键 在WinForm中设置要使用组合键的窗体的KeyPreview(向窗体注册键盘事件)属性为True;然后使用窗体的KeyDown事件(在首次按下某个键时发生)

制作可自定义风格的winform组件类(四)简单按钮

实际上这并不是一个按钮,只是一个变换背影图层而已,但通过过滤背景色,它实现了按钮的不规则形态,例如最常见的圆角风格,下面是代码 namespace CDTheme { public abstract partial class CDBaseImage : CDBase { private Image _normalImage; private Image _disabledImage; public CDBaseImage() { InitializeComponent(); } [Browsa

[UWP]为番茄钟应用设计一个平平无奇的状态按钮

1. 为什么需要设计一个状态按钮 OnePomodoro应用里有个按钮用来控制计时器的启动/停止,本来这应该是一个包含"已启动"和"已停止"两种状态的按钮,但我以前在WPF和UWP上做过太多StateButton.ProgressButton之类的东西,已经厌倦了这种控件,所以我在OnePomodoro应用里只是简单地使用两个按钮来实现这个功能: <Button Content="" Visibility="{x:Bind Vi

如何隐藏winform中报表设计器中的按钮

https://www.devexpress.com/Support/Center/Question/Details/T246117 DesignMdiController.SetCommandVisibility(ReportCommand.NewReport, CommandVisibility.None); DesignMdiController.SetCommandVisibility(ReportCommand.OpenFile, CommandVisibility.None); De

C#Winform基础 一个button按钮调用另外一个button按钮的代码

1.UI 2.通过代码调用 1 using System; 2 using System.Collections.Generic; 3 using System.ComponentModel; 4 using System.Data; 5 using System.Drawing; 6 using System.Linq; 7 using System.Text; 8 using System.Threading.Tasks; 9 using System.Windows.Forms; 10 1