我已经创建了一个选项卡控件和一些选项卡项目。在某些时候,我必须重置选项卡项目文本。当然,我总是可以使用以下方法来做到这一点:
TCITEM tie;
tie.mask = TCIF_TEXT | TCIF_IMAGE;
tie.iImage = -1;
tie.pszText = _T("Start Page");
SendMessage(panel->hwndTab, TCM_SETITEM, tabIndex, (LPARAM)&tie);
但是,我想知道是否可以获取选项卡项目的TCITEM结构,并且仅重置此TCITEM的psztext成员吗?我们可以通过发送
TCM_GETITEM
消息来获取选项卡项目的TCITEM结构吗? 最佳答案
如果我理解您的建议,那么不会,我认为先调用TCM_GETITEM
填写TCITEM
结构不会有任何好处。
调用TCM_GETITEM
将为您提供项目中包含的信息的副本,因此仅更改pszText
指向的字符串将无济于事,直到您调用TCM_SETITEM
并传入新值。
由于您已经知道要设置的值,因此先获取当前值是没有意义的,只需继续执行您要执行的操作即可。
我不确定您是否也有意设置图像,但是如果您不想这样做,则可以删除TCIF_IMAGE
标志,而跳过设置iImage
参数。
关于c - 如何获得选项卡项目的TCITEM结构?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11711587/