Windows 使用Button动态给ListView控件增加和删除一行
Posted 胡刚2021
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows 使用Button动态给ListView控件增加和删除一行相关的知识,希望对你有一定的参考价值。
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 也就是 “点击在列表末尾增加一行” 按钮后的效果如下:
以上是关于Windows 使用Button动态给ListView控件增加和删除一行的主要内容,如果未能解决你的问题,请参考以下文章