0

在我的主窗口过程的 WM_CREATE 消息中,我使用以下代码创建了一个列表视图:

hMyList = CreateWindowA( WC_LISTVIEW,TEXT(""), WS_CHILD | WS_VISIBLE |
          LVS_LIST | LVS_TYPEMASK , XPOS(450), YPOS(20), NWIDTH(200),   
          NHEIGHT(200),hWnd,(HMENU) 9876, hInst, NULL);

然后我插入代码以向该列表视图添加一列:

LVCOLUMN column;    
column.mask = LVCF_TEXT; 
column.pszText = "Name";
SendMessage(hMyList, LVM_INSERTCOLUMN, NULL, (LPARAM)&column );
//returns 0; so everything is fine  

但列没有出现在列表视图中。
问题的根源是什么?

4

1 回答 1

1

列仅在列表视图的报告/详细信息视图中可见。要在该模式下切换它,您应该向它发布 LVM_SETVIEW 消息,或者在 CreateWindowA 中使用 LVS_REPORT 样式而不是 LVS_LIST。

于 2012-08-20T16:02:19.380 回答