我的窗体上有两个RichEdit,其中的一个里面有带有格式(字体等)的文字内容,我想在另一个RichEdit中复制这些内容,请问怎么办?不要用剪贴板,也不要先保存到文件或流再读取的方法,请高手帮忙
解决方案 »
- 已知一个进程名,怎么样杀掉此进程
- 一个很好的项目请人合作
- 如何在Frame中编写事件
- 关于DateTime的转换(在线等待!)
- ★★★★C/S架构ADO连接的应用程序,在打包成安装程序时应分发哪些文件?★★★★
- 如何在我的程序中向另一个软件的 Edit 文本框中发送字符和回车信号?
- 如何使用writefile()写MODEM,要注意什么?
- 为什么不能赋Null值?
- 听说可以在这里找到注册码,请问怎么找吖..哪位高手指点一下..
- 急!!!如何在程序运行中,根据一个table中字段的个数n,动态创建n个Qrlabel和n个qrtext.
- 郁闷!!DELPHI指针操作
- ------各位有谁用过DUnit(Delphi的终极测试器)进行过单元测试?--------
RichEdit1.SelectAll;
RichEdit1.CopyToClipboard;
RichEdit2.Clear;
RichEdit2.PasteFromClipboard;
RichEdit2.Lines.AddStrings(RichEdit1.Lines);
这样做会使原来Clipboard中的内容消失,我觉得从制作应用程序角度讲,如果不是用户自己的要求复制到Clipboard的话,应用程序是不应该随意把自己的内容放到Clipboard的,因为用可能还要用原来Clipboard中的内容;To: wmh_654321(qqq)
你的方法只能复制文本,不能复制字体等格式。上述两点我在问题中已经写明白了:)
var i: Integer;
begin
RichEdit2.Clear;
RichEdit2.Lines.Assign(RichEdit1.Lines);
for i := 0 to Length(RichEdit1.Lines.Text) - 1 do begin
RichEdit1.SelStart := i;
RichEdit1.SelLength := 1;
RichEdit2.SelStart := i;
RichEdit2.SelLength := 1;
RichEdit2.SelAttributes.Assign(RichEdit1.SelAttributes);
end;
end;
我还没试,不过感觉你的方法可行,就是不知道插入图片行不行。
我使用的是RxRichEdit,想做一个每当文档内容变化就自动保存到磁盘的小程序,这样即使断电内容也不会丢失。但是如果在OnChange中保存文件的话,该控件保存内容后就不支持UnDo功能了。所以想先复制到另一个RxRichEdit中,用新的RxRichEdit进行保存。我试试你的方法,就是不知道如果里面有图形的时候是否可行