为ExRichTextBox扩展增加GIF格式图片

ExRichTextBox扩展

ExRichTextBox扩展是肯迪斯·戈登(Khendys Gordon)在2003 年 7 月 14 日发表的扩展RichTextBox控件,它可以不使用剪贴板的方式插入图片到ExRichTextBox文本框中
1、它允许以编程方式插入纯文本。
2、允许字体,文本颜色,并突出显示颜色(文本的背景颜色)被指定 当插入或添加纯文本的内容RichTextBox。
3、允许插入图像编程方式不使用剪贴板。
下载网站如下:https://www.codeproject.com/Articles/4544/Insert-Plain-Text-and-Images-into-RichTextBox-at-R?msg=1278295#xx1278295xx
在这里插入图片描述

对ExRichTextBox扩展的更新

ExRichTextBox在发表以来没有更新过,也有它明显的不足就是插入图片过大会产生内存泄露的问题。笔者根据肯迪斯·戈登(Khendys Gordon)的ExRichTextBox为蓝本修改了如下 内容

1、增加了中文显示

在这里插入图片描述

2、修改了添加图片内存泄露的BUG

在这里插入图片描述

3、增加了GIF图片显示

在这里插入图片描述

4、增加了鼠标滚动轮滚动GIF图片不能跟随

下面展示一些 内联代码片

  #region 重写鼠标轮
        protected override void OnMouseWheel(MouseEventArgs e)
        {
            // 向基类注册事件。
            base.OnMouseWheel(e);			
			GetRichTextObjRectangle();
		}


		#endregion

5、增加了超连接支持

在这里插入图片描述

6、重写WndProc
下面展示一些 内联代码片

#region 重写WndProc	
		/// <summary>
		/// 重写
		/// </summary>
		/// <param name="m"></param>
		protected override void WndProc(ref Message m)
		{
            switch (m.Msg)
            {              
                //要求一个窗口重画自己
                case WM_PAINT:
                    {						
						foreach (Control _SubControl in base.Controls)
                        {
                            _SubControl.Tag = "1";
                        }
                        GetRichTextObjRectangle();
						
						for (int i = 0; i != base.Controls.Count; i++)
                        {
                            if (base.Controls[i].Tag.ToString() == "1")
                            {
                                base.Controls.RemoveAt(i);
                                i--;
                            }
                        }

                        break;
                    }
                //获取焦点
                case WM_SETFOCUS:
                    {

						//this.ImeMode = System.Windows.Forms.ImeMode.KatakanaHalf;

						break;
                    }

                default:
                    break;
            }
            base.WndProc(ref m);
		}
        #endregion

7、修改内空如下:笔者对ExRichTextBox注释的比较详细可以查看原文件

在这里插入图片描述

8、下载地址:https://download.csdn.net/download/weixin_43727933/27797782

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杏雨1969

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

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

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

打赏作者

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

抵扣说明:

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

余额充值