怎样改变Tooltip的大小

这里是改变tooltip后的效果:

可以看到tooltip控件的字符尺寸比一般的大。

下面是代码:

    public partial class Form1 : Form
    {
         string buttontooltip = "ToolTip Message Here";
         public Form1()
         {
             InitializeComponent();
             toolTip1.SetToolTip(button1, buttontooltip);
             toolTip1.OwnerDraw = true;
             toolTip1.Draw += new DrawToolTipEventHandler(toolTip1_Draw);
             toolTip1.Popup += new PopupEventHandler(toolTip1_Popup);
         }

        void toolTip1_Popup(object sender, PopupEventArgs e)
         {
  
             // on popip set the size of tool tip
           e.ToolTipSize = TextRenderer.MeasureText(buttontooltip, new Font("Arial", 16.0f));
         }

        void toolTip1_Draw(object sender, DrawToolTipEventArgs e)
         {       
                 Font f = new Font("Arial", 16.0f);
                 e.DrawBackground();
                 e.DrawBorder();
                 buttontooltip = e.ToolTipText;
                 e.Graphics.DrawString(e.ToolTipText, f, Brushes.Black, new PointF(2, 2));     
         }

     }

tooltip重绘时Draw事件被触发。

DrawToolTipEventArgs类包括所有用来绘制ToolTip的信息,包括ToolTip text, Rectangle和绘制的目标Graphics对象。

使用Draw事件可以自定义ToolTip的外观。

void toolTip1_Draw(object sender, DrawToolTipEventArgs e)
        {      
                Font f = new Font("Arial", 16.0f);
                e.DrawBackground();
                e.DrawBorder();
                e.Graphics.DrawString(e.ToolTipText, f, Brushes.Black, new PointF(2, 2));    
        }
    }

如果你想选择其他的字体。你可以简单的像下面的方式做:

改变

Font f = new Font("Arial", 16.0f);
到:

Font f = new Font("Verdana", 16.0f);

然后就会以verdant字体打印了。

ToolTip.Popup事件在ToolTip开始显示时触发。

在这个事件中。我们设置弹出ToolTip气泡的文本大小,字体大小为指定的值。

e.ToolTipSize = TextRenderer.MeasureText(buttontooltip, new Font("Arial", 16.0f));

这行代码量测了该字体下的文体长度。

希望你能理解它!!!

谢谢。


作者:Hiren Soni on August 16,2010

原文地址:http://www.c-sharpcorner.com/uploadfile/hrojasara/how-to-change-the-size-of-tooltip/

译者:无脸男371545207



  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值