Gitee代码链接(有100多MB)
新增加的文件为 AddButtonCtrlListView.cpp
和上一节程序 Windows 使用ListView控件 的变化是:
定义了两个Button的ID
UINT IDC_BUTTON_2 = 201;// 点击删除列表最后一行
UINT IDC_BUTTON_3 = 202;// 点击在列表末尾增加一行
并且把 hListCtrl 的定义从 case WM_CREATE: 内部提升到了函数外部
HWND hListCtrl;
以及,在 case WM_CREATE: 创建了两个Button
HWND hButtonWnd_2 = CreateWindow(WC_BUTTON, _T("点击删除列表中的一行"), WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE, 20, 120, 200, 50, hWnd, (HMENU)IDC_BUTTON_2, NULL, NULL);
HWND hButtonWnd_3 = CreateWindow(WC_BUTTON, _T("点击在列表末尾增加一行"), WS_CHILD | BS_PUSHBUTTON | WS_VISIBLE, 20, 180, 200, 50, hWnd, (HMENU)IDC_BUTTON_3, NULL, NULL);
最后,在 case WM_COMMAND: 增加了对两个Button的点击事件的处理
else if (nCode == BN_CLICKED && nCtrlID == IDC_BUTTON_2)
{
int itemCount = ListView_GetItemCount(hListCtrl);
// button2 被点击,删除列表中的最后一行
ListView_DeleteItem(hListCtrl, itemCount - 1);
}
else if (nCode == BN_CLICKED && nCtrlID == IDC_BUTTON_3)
{
int itemCount = ListView_GetItemCount(hListCtrl);
LV_ITEM row_item = {0};
row_item.mask |= LVIF_TEXT;
row_item.pszText = (LPWSTR)_T("66666666");
row_item.iItem = itemCount;
// button3 被点击,在列表末尾增加一行
int iRow = ListView_InsertItem(hListCtrl, &row_item);
}
点击运行后的画面如下:
点击 Button2 也就是 “点击删除列表中最后一行” 按钮后的效果如下:
点击 Button3 也就是 “点击在列表末尾增加一行” 按钮后的效果如下: