win32-listctrl

创建实例

InitCommonControls();
m_handleList = GetDlgItem(m_hWnd, IDC_LIST1);

LVCOLUMN LvCol;
memset(&LvCol, 0, sizeof(LvCol));
LvCol.mask = LVCF_TEXT | LVCF_WIDTH | LVCF_SUBITEM; // Type of mask
LvCol.cx = 200; // width between each coloum
LvCol.pszText = "分组"; // First Header
SendMessage(m_handleList, LVM_INSERTCOLUMN, 0, (LPARAM)&LvCol);
LvCol.pszText = "设备编号";
SendMessage(m_handleList, LVM_INSERTCOLUMN, 1, (LPARAM)&LvCol);
LvCol.pszText = "设备名称";
SendMessage(m_handleList, LVM_INSERTCOLUMN, 2, (LPARAM)&LvCol);
LvCol.pszText = "是否启用";
SendMessage(m_handleList, LVM_INSERTCOLUMN, 3, (LPARAM)&LvCol);

插入一行

// 填充设备信息列表
LVITEMA item;
memset(&item, 0, sizeof(item)); // Zero struct's Members
// Setting properties Of members:
item.mask = LVIF_TEXT; // Text Style
item.cchTextMax = 256; // Max size of test
item.iItem = 0; // choose item
item.iSubItem = 0; // Put in first coluom
item.pszText = "Item 0"; // Text to display (can be from a char variable) (Items)

SendMessage(m_handleList, LVM_INSERTITEM, 0, (LPARAM)&item); // Send info to the Listview
char Temp[512];
for (int i = 1; i <= 5; i++) // Add SubItems in a loop
{
item.iSubItem = i;
sprintf(Temp, "SubItem %d", i);
item.pszText = Temp;
SendMessage(m_handleList, LVM_SETITEM, 0, (LPARAM)&item); // Enter text to SubItems
}