我和TRichEdit有一些问题。
第一个问题是,如果我试图将大量文本从剪贴板粘贴到一个空的TRichEdit中,它会截断文本的底部。
我猜想,第二个问题与第一个问题有关,我似乎仅限于TRichEdit可以显示多少个字符,因此从剪贴板上粘贴掉了一些数据。
如果我粘贴到一个TJvRichEdit (绝地),这很好,显然,因为这是一个完全不同的组成部分。
此时,我想为TRichEdit提供一个解决方案,因为我正在使用大量的过程/函数等等,如果我更改为一个不同的TRichEdit类,那么我将不得不编辑大量代码才能工作。
所以基本上我要问的是:
请只为TRichEdit提供建议/解决方案。
编辑
不要紧的是通过以下方法找到答案:
RichEdit11.MaxLength := $7FFFFFF0;发布于 2011-05-18 20:34:41
引用新闻组大卫·佩特的回答
以下备注适用于使用Windows Richedit version 1控件的Delphi版本。我知道这包括版本7之前的所有Delphi版本(我不知道在Windows的各种NT/2000版本上运行在这些版本中编译的程序时的情况,尽管Windows XP的行为正如所述)。
问:一个Richedit所能持有的文本数量的限制是什么?答:帮助文件(Delphi和Win32 SDK)在这一点上是混乱、矛盾和不正确的。有五个限制需要考虑
问:我如何增加tRichEdit可以保存的文本数量?
当您以编程方式添加文本时,将调整容量和“键盘限制”以适应所添加的文本。通过编程添加文本,我的意思是使用tRichEdit.Lines属性的任何添加、追加、tRichEdit.Lines或赋值方法,或者使用tRichEdit的LoadFromFile、LoadFromStream或SetTextBuf方法。请注意,以这种方式添加文本不会更新MaxLength属性。
通过使用MaxLength属性。这将“键盘限制”设置为传递给MaxLength的值。如果现有容量小于MaxLength,则还会增加与“键盘限制”匹配的容量。请注意,您不能使用MaxLength来减少容量,如果传递的值小于控件中当前文本的长度,则更改MaxLength不会产生任何影响。若要将容量和“键盘限制”提高到相同的值,请将tRichEdit.MaxLength设置为所需的值。若要在对象检查器中设置最大大小,请使用值2147483645 ($7FFFFFD)。要以编程方式设置它,使用.MaxLength := System.MaxInt-2;更简单。EM_LIMITTEXT和EM_EXLIMITTEXT消息也可用于更改“键盘限制”和容量,但我通常不建议使用它们,因为如果使用,您将不会更新MaxLength属性。
https://stackoverflow.com/questions/6049053
复制相似问题