Rich Edit 2.0 的问题(在线等)

okoooo 2005-07-14 02:23:20
为什么我在我的对话框中加上一个RichEdit2.0的控件后对话框就显示不出来了??
去掉这个控件就可以DoModal了,为什么??
...全文
144 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChenLiuqing 2005-07-14
  • 打赏
  • 举报
回复
MSDN上面RichEdit的说明上写着有,楼主多留意一下MSDN吧,:)
okoooo 2005-07-14
  • 打赏
  • 举报
回复
在App类的InitInstance函数中添加AfxInitRichEdit();
谢谢这为朋友了,问题解决!

在工具箱里写的就是Rich Edit 2.0 Control 啊~~
不过还是要谢谢大家!
goodboyws 2005-07-14
  • 打赏
  • 举报
回复
1.你咋知道是2.0呢
2.要用RichEdit2.0需要自己调用LoadLibrary("RichEdit20.dll");
老夏Max 2005-07-14
  • 打赏
  • 举报
回复
在App类的InitInstance函数中添加AfxInitRichEdit();
不用第三方控件,让richEdit支持图片与表格换行 DELPHI 6 提供的RICHEDIT是1.0,并不支持图片,对复杂表格也会乱成一团,如何在DELPHI原有控件的基础上做少量修改,使之支持显示图片与正确显示表格,其实只需要几行就好了,方法如下: 找到richEdit控件所在单元ComCtrls.pas (在SOURCE\VCL) //第一步 procedure TCustomRichEdit.CreateParams(var Params: TCreateParams); const // RichEditModuleName = 'RICHED32.DLL';//原来语句 // RichEditClassName = 'RICHEDIT'; //原来语句 RichEditModuleName = 'Msftedit.dll'; //改后语句 RichEditClassName = 'RichEdit50W'; //改后语句 //第二步 procedure TCustomRichEdit.CreateWnd; .... //加入一行要放在 CreateWnd 因为此时 HANDLE已建立 Perform(EM_SetOleCallback, 0, Longint(TRichEditOleCallback.Create(TRichEdit(self)) as IRichEditOleCallback)) ; //第三步 procedure TCustomRichEdit.WMRButtonUp(var Message: TWMRButtonUp); begin inherited; // RichEd20 does not pass the WM_RBUTTONUP message to defwndproc, // so we get no WM_CONTEXTMENU message. Simulate message here. // if Win32MajorVersion < 5 then //是原有1.0的要去掉 Perform(WM_CONTEXTMENU, Handle, LParam(PointToSmallPoint( ClientToScreen(SmallPointToPoint(Message.Pos))))); end; //第四步 procedure TRichEditStrings.Insert(Index: Integer; const S: string); .... //要去掉后面两名 // 1.0 uses, 2.0 will error happened 2011 // if RichEdit.SelStart (Selection.cpMax + Length(Str)) then //是原有1.0的要去掉 // raise EOutOfResources.Create(sRichEditInsertError); //是原有1.0的要去掉

15,980

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 界面
社区管理员
  • 界面
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧