标签编辑

【勇芳软件工作室】汉化HomePreviousNext

具有LVS_EDITLABELS窗口样式的列表视图控件使用户能够编辑项目标签。用户通过单击具有焦点的项目的标签开始编辑。应用程序可以使用LVM_EDITLABEL消息自动开始编辑。列表视图控件在编辑开始时以及取消或完成时通知父窗口。编辑完成后,如果合适,父窗口负责更新项目的标签。

当标签编辑开始时,列表视图控件将其父窗口发送LVN_BEGINLABELEDIT通知消息。您可以处理此消息以允许选择性地编辑特定标签;返回非零值可防止标签编辑。

当标签编辑被取消或完成时,列表视图控件将其父窗口发送LVN_ENDLABELEDIT通知消息。【lParam的】参数是LV_DISPINFO结构的地址。此结构的项目成员是一个LV_ITEM结构,其的iItem成员标识该项目。如果编辑被取消,则LV_ITEM结构的pszText成员为NULL;否则,pszText是指向编辑文本的指针。父窗口负责更新项目的标签(如果适用),可能在验证编辑的字符串后。

在标签编辑过程中,您可以使用LVM_GETEDITCONTROL消息获取用于标签编辑的编辑控件的句柄。要限制用户输入的文字数量,您可以发送编辑控件EM_LIMITTEXT消息。您甚至可以编辑控件子类来截取和丢弃无效字符。在发送LVN_BEGINLABELEDIT通知消息之后创建编辑控件。