这里是改变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