C#中修改提示字体及颜色

    如果设置了控件的ToolTip属性,当鼠标移到该控件后,会提示相关的文本,但没有提供对提示字体及颜色的设置属性,如何改变提示文本的样式和字体呢?本例可以设置提示文本的字体及颜色。

技术要点

    C# 中提供了ToolTip控件,可以指定关联控件并为每个控件提供提示文本,其中ToolTipTitle属性指定文本提示盒中的文本。下面介绍相关的属性和方法。

(1)SetToolTip方法

使工具提示文本与指定的控件相关联。其语法结构如下:

public void SetToolTip (Control control,string caption)

参数说明如下。

     control:要将工具提示文本与其关联的Control。

     caption:指针位于控件上方时要显示的工具提示文本。

(2)ToolTip.ToolTipTitle属性

获取或设置工具提示窗口的标题。其语法结构如下:

public string ToolTipTitle { get; set; }

      属性值:包含窗口标题的String。该标题在窗口中作为一行粗体文本显示在标准的工具提示控件说明文本的上方。通常,标题只用于区分窗体上不同类别的控件,或作为较长控件说明的简介。

 实现过程

(1)创建一个项目,将其命名为Ex01_46,默认窗体为Form1。

(2)在Form1窗体上添加Button控件用来在其上方显示提示文本;添加ToolTip控件用来设计提示文本。

(3)主要程序代码。
设置提示文本,及提示文本的关联控件,具体代码如下:
        private void Form1_Load(object sender, EventArgs e)
        {
            this.toolTip1.OwnerDraw = true;
            this.toolTip1.SetToolTip(this.button1,"设置提示的字体及颜色");
            this.toolTip1.Draw += new DrawToolTipEventHandler(toolTip1_Draw);
        }
设置文本的提示样式,具体代码如下:
        void toolTip1_Draw(object sender, DrawToolTipEventArgs e)
        {
           // throw new Exception("The method or operation is not implemented.");
            e.DrawBackground( );
            e.DrawBorder( );
            using (StringFormat sf = new StringFormat( ))
            {
                sf.Alignment = StringAlignment.Center;
                sf.LineAlignment = StringAlignment.Center;
                sf.HotkeyPrefix = System.Drawing.Text.HotkeyPrefix.None;
                sf.FormatFlags = StringFormatFlags.NoWrap;
                using (Font f = new Font("宋体", 12))
                {
                    e.Graphics.DrawString(e.ToolTipText, f,
                        SystemBrushes.ActiveCaptionText, e.Bounds, sf);
                }
            }
        }

总结:

根据本实例,可以实现以下功能。

    1、修改任意控件提示文本的样式。

    2、提示时加提示的声音。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值