RichEdit嵌入自开发OLE控件技术要点(ATL)

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

richedit插入gif实例下载:

OLE封装库

RICHEDIT_DEMO

1、创建ATL复合文档控件。可通过wizard创建。
下面是创建OLE控件的最小头文件

// CSimpleOleObject
class ATL_NO_VTABLE CSimpleOleObject :
	public CComObjectRootEx<CComSingleThreadModel>,
	public IDispatchImpl<ISimpleOleObject, &IID_ISimpleOleObject, &LIBID_atlsdLib, /*wMajor =*/ 1, /*wMinor =*/ 0>,
	public IPersistStreamInitImpl<CSimpleOleObject>,
	public IOleControlImpl<CSimpleOleObject>,
	public IOleObjectImpl<CSimpleOleObject>,
	public IOleInPlaceActiveObjectImpl<CSimpleOleObject>,
	public IViewObjectExImpl<CSimpleOleObject>,
	public IOleInPlaceObjectWindowlessImpl<CSimpleOleObject>,
#ifdef _WIN32_WCE // 要在 Windows CE 上正确加载该控件,要求 IObjectSafety
	public IObjectSafetyImpl<CSimpleOleObject, INTERFACESAFE_FOR_UNTRUSTED_CALLER>,
#endif
	public CComCoClass<CSimpleOleObject, &CLSID_SimpleOleObject>,
	public CComCompositeControl<CSimpleOleObject>
{
public:


	CSimpleOleObject()
	{
		m_bWindowOnly = TRUE;
		CalcExtent(m_sizeExtent);
	}

DECLARE_OLEMISC_STATUS(OLEMISC_RECOMPOSEONRESIZE |
	OLEMISC_CANTLINKINSIDE |
	OLEMISC_INSIDEOUT |
	OLEMISC_ACTIVATEWHENVISIBLE |
	OLEMISC_SETCLIENTSITEFIRST
)

DECLARE_REGISTRY_RESOURCEID(IDR_SIMPLEOLEOBJECT)


BEGIN_COM_MAP(CSimpleOleObject)
	COM_INTERFACE_EN
Duilib中为RichEdit\Edit控件添加自定义右键菜单 前言 Duilib中的RichEdit控件在使用中发现,基本上对复制、粘贴、剪切等快捷方式都是支持的,不过唯一缺点是没有右键菜单,感觉不够好,于是就想着加上右键菜单。 右键菜单基本思路是,在RichEdit的消息处理函数中对鼠标的右键消息处理,发送一个自定义的Notify消息出来,主窗口中受到这个消息后弹出自己的右键菜单。 实现方法 第一步:把鼠标右键消息转 阅读详情

相关推荐

DuiLib实现仿微信聊天界面(二)——解决RichEdit自适应高度问题

前言 在上一篇文章中: DuiLib实现仿微信聊天界面 我们实现了仿微信的布局和简单的聊天列表: 但是,因为网易开源 NimDuiLib 的版本落后于其提供的Demo,同样的写法在开源DuiLib中就会出现问题,比如RichEdit在同时设置width、height为auto时,会断错误。所以需要我们自己进行修复。 至于为何要设置RichEdit的width和height属性为auto?因为文本的宽度和高度都是动态的,根据文本的内容需要自行计算。 网易DuiLib中控件如何计算宽高? 我们从网易Dui

xmcy001122的专栏 2200

原生DuiLib实现聊天界面

源码由VS2013 + C++实现,支持XP,界面可查看链接https://blog.csdn.net/u012983289/article/details/122681650

Windows RichEdit嵌入图片的实战演示

本文还有配套的精品资源,点击获取 简介:本例子详细展示了如何在WindowsRichEdit控件中使用OLE技术嵌入图片,类似于QQ聊天窗口的图片显示功能。通过腾讯的"ImageOledll"库以及特定的API调用和编程步骤,开发者可以在富文本编辑器中实现图片的直接显示。文章还涵盖了如何正确注册和使用"ImageOledll"库,创建和插入图片对象,更新视图显示,以及进行...

weixin_42601134的博客 1432

richedit_Linkdemo_richedit_超链接_

richedit实现超链接发送,以及点击响应的功能

CRichEditCtrl的先天不足及进化方法

不能够自动初始化 不能够接受TAB键 不能够通过属性设置自动换行 不能显示图片等其他OLE对象 不能够使用Ctrl+C来实现拷贝不能够自动初始化 Rich Edit 控件Ole类型的控件。在加载Rich Edit 控件的时候,必须进行初始化。代码如下: BOOLCTestApp::InitInstance(){ ..... ...

dbxxdqh48705的博客 297

richedit中表情的嵌入应用imageole.dll

richedit中表情的嵌入应用imageole.dll

MFC富文本编辑框richedit插入图片ole对象问题

MFC富文本编辑框richedit插入图片ole对象问题 学习了三四天的一点成果,如果有不对的地方还请指出。 目前发现有两种方法来向richedit中插入ole对象: 1.直接粘贴,然后使用回调函数来控制即将插入的ole对象。 2.自己构造一个ole对象然后调用richedit的方法来插入。 MFC应该对richedit插入ole对象做了封装,只留了一个接口设置回调函数,然后在回调函数中对即将插入...

weixin_43125037的博客 1583

向MFC的RichTextCtrl中插入GIF问题总结,~

http://www.4ucode.com/Study/Topic/1371594 Using Windowless RichEdit Controls http://www.codeproject.com/KB/edit/RichDrawText.aspx OLE Drag and Drop http://www.catch22.net/book/expor...

作一个独立连续的思考者 1107

RichEditole 对象的相关支持总结

RichEditole 对象的相关支持总结

tangaowen的专栏 8961

数CRichEditCtrl的先天不足及进化方法

数CRichEditCtrl的先天不足及进化方法 今天一位同事要离开公司到电脑报去做事,中午大家为他举行了一个欢送会,大家都喝得挺多。 送走那位同事之后,我回到了办公室,觉得头有点晕,不想做事,于是就把集聚在心中,这几天对MFC框架中的CRichEditCtrl的不满,发泄在这篇blog上,希望前辈们能够多指教,也希望能够为后来者扫除一些MFC开发历程中的障碍。 软件开发网 不能

scutlihang的专栏 695

RichEdit Ole生命周期

#pragma once #include #include #include #include "CaretWindow.h" #include "richeditolemgr.h" #pragma comment(lib, "Riched20.lib") class RichEditBase; // RichEdit及其Callback的实现,可以参考MFC CRichEdit

AcketRose的专栏 1384

也谈向Richedit插入动态Gif的实现

http://www.deadc0de.com/archives/insert-gif-to-richedit.html#more-14 最近在做IM软件,需要实现向Richedit插入表情,表情是动态的GIF图像。由于以前没有做过关于richedit开发,百度了下,需要使用OLE技术。也就是说,插入的图片都是一个OLE对象。而RICHEDIT则是一个OLE容器,相关链接如下。

Richard的专栏 6480

实现一种快速查找Richedit中可见区域内OLE对象的方法

Richedit是一个OLE容器,使用Richedit来显示IM聊天内容时,通常使用OLE对象来实现在Richedit中播放表情动画。 触发表情的绘制有两种途径: 1、来自Richedit的刷新消息。 2、来自表情动画定时器的刷新消息。 要刷新表情的显示首先需要知道表情的显示位置。 第一种刷新过程中,绘制消息参数里已经给出绘制位置,直接在指定的位置绘制即可。 但是表情主动刷新时如何获取...

weixin_33853827的博客 244

Duilib 源码分析之 CRichEditUI

CRichEdit 的代码较多,主要是因为富文本控件可实现的操作和控制较多,在 Duilib 中的代码实现了很多功能,在只有部分功能被实际调用了,所以要想真正学会用富文本控件,最好是自己动手做一个例子,将大部分的方法自己手动调用一遍,看看效果。碰到一个新控件,我的习惯还是先看下控件的父类、SetAtrribute 方法,扫一眼成员函数名称和成员变量名称。这样会对这个控件的功能有一个大体的认识。先看

Aloe_Jinchx的博客 4868

Duilib中Richedit使用

1.要想能从剪切板中的图片能插入到

AcketRose的专栏 5498
上一篇: 技术文章推荐
下一篇: 关于ATL的rgs文件
方寸之间
博客等级 码龄19年 198粉丝 118原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值