c# winform给Button等本身没有tooltiptext属性的控件添加tooltip提示

1. 对于没有tooltiptext属性的控件来说,要如何添加提示语呢?

在网上查了,大部分介绍都是在控件的MouseEnter事件中写代码:

ToolTip p = new ToolTip();

p.ShowAlways = true;

p.SetToolTip(this.button1, "要显示的文字");

但是如果一个窗口有很多控件,岂不是要写很多重复的代码。

可以优化为每个控件使用同一个mouseenter事件,代码为

        private void 控件_MouseEnter(object sender, EventArgs e)
        {
            ToolTip p = new ToolTip();
            p.ShowAlways = true;

            if ((Control)sender==btn_返回)p.SetToolTip((Control)sender, "取消");

            if ((Control)sender==btn_受理)p.SetToolTip((Control)sender, "受理订单");

            .....其他控件

        }

 

 

2. 实际上,.net本身已经给我们提供了tooltip控件,很方便的就可以添加提示语了。

   2.1 拖一个tooltip到窗口中后,窗口中的所有控件都会自动添加一个属性:tooltip1上的ToolTip,只要在每个控件的这个属性填上对应的提示语就行了。

 

实际效果:

2.2 在添加提示语后去构造函数里面查看,代码其实很简单。窗口添加一个tooltip后,使用SetToolTip方法就行了 

       this.toolTip1.SetToolTip(this.btn_显示下一单, "受理订单并显示下一单");

2.3 于是我自己用代码尝试了一下:

        public Form_上下班设定()
        {
            InitializeComponent();
            ToolTip tooltip1 = new ToolTip();
            tooltip1.IsBalloon = true;
            tooltip1.SetToolTip(lbl_设定, "保存设定");
            tooltip1.SetToolTip(txt_堂食歇业公告, "顾客将会看到你的公告,请不要乱写!");
        }

实际效果:

所以,tootip,根本不需要使用MouseEnter事件。

3. 总结:有些方法能实现同样的效果,但不一定是最佳的。.net为我们提供了很多方便的可视化操作,我们很容易忽视其中的代码实现,很多时候,我们需要从构造函数中发现控件的正确用法。

  • 5
    点赞
  • 6
    评论
  • 13
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

评论 6 您还未登录,请先 登录 后发表或查看评论
©️2022 CSDN 皮肤主题:技术工厂 设计师:CSDN官方博客 返回首页

打赏作者

icedoolin_wzh

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值