TTreeView能否显示超259字符行?C++ Builder 2010是否受此限制?
TTreeView文本截断与TreeNode存储问题解答
259字符的文本截断确实是原生Windows TreeView控件的限制,C++ Builder 2010中的TTreeView是对该原生控件的VCL封装,因此这个限制完全适用。底层Windows控件在渲染文本时,会自动截断超过259个字符的部分,这是早期Windows控件为兼顾性能与兼容性设定的固有规则。
TreeNode属性能存储更长字符串的原因在于:TreeNode是VCL层面封装的对象,其
Text等属性的内容保存在VCL管理的内存空间中,和原生TreeView控件的显示缓冲区相互独立。你可以为TreeNode的Text属性赋值任意长度的字符串(只要系统内存充足),这部分内容会被VCL完整保存,但传递给原生控件用于显示时,控件仅会读取前259个字符进行渲染,剩余内容依然存在TreeNode的属性中,只是不会在界面上显示出来。
内容的提问来源于stack exchange,提问作者killa
相关产品推荐
相关产品推荐

