繁体   English   中英

LVCOLUMN.cchTextMax和LVITEM.cchTextMax的目的是什么?

[英]What is the purpose of LVCOLUMN.cchTextMax and LVITEM.cchTextMax?

我尝试将LVCOLUMN.cchTextMaxLVITEM.cchTextMax的值设置为随机值(小于相应的字符串长度),并且可以正常工作,是否错误地工作了,或者没有必要设置这些字段?

我也看到了不使用这些字段的示例,例如: http : //www.codeproject.com/Articles/9148/C-functions-to-insert-columns-items-and-subitems-i

LVITEM结构的文档在cchTextMax成员上有以下说法:

仅当结构接收项目属性时才使用此成员。 当结构指定项目属性时,它将被忽略。 例如,cchTextMax定义中被忽略LVM_SETITEMLVM_INSERTITEM LVN_GETDISPINFO和其他LVN_通知期间,它是只读的。

除非您使用此结构来检索项目信息,否则将忽略此成员。 接收数据时,您必须将指针传递到pszText的缓冲区,并通过cchTextMax成员传递其大小。

这是整个Windows API的通用模式,其中使用相同的结构来设置和查询值。 各个成员的语义取决于方向。 以类似方式使用的其他常见结构包括例如TVITEMMENUITEMINFO

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM