我想在TStringGrid中加载一些文本.除了字符串超过100K的列外,字符串很短.似乎TStringGrid无法处理这个问题.在双击单元格进行编辑之前,文本不会出现在单元格中.但即便如此,这种行为也是不稳定的.
要重现:在表单上放置一个网格,设置goEdit = true.运行该应用程序并双击一个单元格.粘贴一些文本(不应包含输入)并按Enter键结束编辑.文字消失了.
在我做的文本中,限制大约是6208个ASCII字符.
对此有任何快速解决方法/解决方法吗?
文字被涂上了ExtTextOut.众所周知,很长的字符串会失败.例如:ExtTextOut失败,字符串非常长,除非指定较低的字体质量.据我所知,确切地知道字符串长度导致失败是很棘手的.
我建议如果你需要支持这么长的字符串,那么你可以通过实现一个OnDrawCell事件处理程序来自己绘制它们.不要绘制整个字符串,因为毕竟用户将无法在单元格的矩形外看到任何内容.这样你就可以避免发送ExtTextOut一个太长而无法处理的字符串的问题.
| 归档时间: |
|
| 查看次数: |
248 次 |
| 最近记录: |