我们如何编辑项目的标签并使用修改后的文本设置编辑控件?使用win32编辑treeview项目标签。
我一直这样做,但项目并没有被输入的新文本覆盖。任何人都可以帮助我通过使用win32来实现这一点。
这就是我所做的。
if(((LPNMHDR)lParam)->code == TVN_BEGINLABELEDIT)
{
hEdit=TreeView_GetEditControl(hTree);
SetFocus(hEdit);
}
if(((LPNMHDR)lParam)->code == TVN_ENDLABELEDIT)
{
char Text[256] = "";
tvItem.hItem = Selected;
SendDlgItemMessage(hWnd,IDC_TREE,TVM_GETITEM,0,(LPARAM)&tvItem);
GetWindowText(hEdit, Text, sizeof(Text));
tvItem.pszText = Text;
SendDlgItemMessage(hWnd,IDC_TREE,TVM_SETITEM,0,(LPARAM)&tvItem);
}
什么你知道它正显示出输入的文本在“tvItem.psText”,但是当我设置的项目它没有显示在项目标签修改和标签是一样的老text.Can奇迹任何人都可以帮助使编辑后的文本显示在项目标签上。
由于事先 西瓦V
你会使用'char'数组作为一个字符串类型有一个真正的问题。过去15年的Windows应用程序一直是Unicode,这意味着'wchar_t'是要使用的字符类型。使用'L'前缀字符串文字(如“”)。 –