消息框使用说明

    xiaoxiao2021-12-14  18

    1.  RichEdit中插入的Object 触发重画方法,可以用来更新object视图

    通过RichEdit 的OnPaint函数,触发 ITextHost m_pTxtHost->GetTextService()->TxDraw()接口,系统会通过回调函数调用触发 IViewObject::Draw();接口,从而重画object

    2. 调整RichEdit中显示一个项目(例如图片),设置在空间中显示的宽度与像素数的幻算关系。 显示的宽度 = 图片实际像素的计算

    void RichEditOleBase::CalculateExtentSize(const SIZE& sizeNature) {     // 周围留一个像素作为选中时的黑框     HDC hDC = ::GetDC(NULL);     m_sizeExtent.cx = ::MulDiv(sizeNature.cx, 2540, GetDeviceCaps(hDC, LOGPIXELSX));     m_sizeExtent.cy = ::MulDiv(sizeNature.cy, 2540, GetDeviceCaps(hDC, LOGPIXELSY));     ::ReleaseDC(NULL, hDC); }

    同时,在IRichEditOle ole 对象插入一个对象 REOBJECT reobject 对象时,ole->InsertObject(&reobject); 会调用 IOleObject::GetExtent()接口获取要插入对象的大小

    转载请注明原文地址: https://ju.6miu.com/read-968398.html

    最新回复(0)