VC 6 SDK Listcontrol 控件数据编辑及其使用范例.docVIP

  • 7
  • 0
  • 约 28页
  • 2015-07-27 发布于安徽
  • 举报

VC 6 SDK Listcontrol 控件数据编辑及其使用范例.doc

VC 6.0 SDK Listcontrol 控件数据编辑?? 2011-11-13 18:58:06|??分类: 默认分类 |??标签: |字号大中小?订阅 1.VC 6.0 新建 Win32 Application 工程文件ListtrlEdit,选择 Hello World!。 在About对话框中添加 List control控件 ID为:IDC_LIST1,属性修改如下: ? 添加 “确认”按钮 ID为:IDB_BTOK,勾选Default button属性 “取消”按钮 ID为:IDB_CANCEL “Edit”编辑框, ID为“IDC_EDIT1”,去掉Visible、Border属性对号 将原“OK”按钮改名为“退出”并去掉Default button属性对号 ? 2.在ListtrlEdit.cpp文件中添加如下(红色)代码: #include stdafx.h #include resource.h #include commctrl.h #pragma comment (lib,comctl32.lib) 3.在BOOL InitInstance(HINSTANCE hInstance, int nCmdShow) 里“return TRUE;”前添加 InitCommonControls(); 4.声明全局变量 TCHAR szText[256]; 5.将下面About ()代码替换原有的About () LRESULT CALLBACK About(HWND hDlg, UINT message, WPARAM wParam, LPARAM lParam) { int wmId, wmEvent; static int iItem,iSubItem; static HWND hWndlist,hedit; ??? static dblclkcell=false;??? //双击一个单元格 LVCOLUMN ColInfo1 = {0}; LVCOLUMN ColInfo2 = {0}; LVITEM item; NMHDR *pNMHDR; RECT rect,rt; static RECT ltrt={50,65,500,310}; ? switch (message) { case WM_NOTIFY: { pNMHDR = (NMHDR *) lParam; if(pNMHDR-code==NM_CLICK) { ::SetWindowText(hedit,); ShowWindow(hedit,SW_HIDE); } ? if(pNMHDR-code==NM_DBLCLK) { dblclkcell=true; LPNMITEMACTIVATE temp = (LPNMITEMACTIVATE)lParam; iItem=temp-iItem; iSubItem=temp-iSubItem; ? int rownum = ListView_GetItemCount(hWndlist); //返回行数 int colnum = Header_GetItemCount(ListView_GetHeader(hWndlist)); //返回列数 if(iSubItem == -1 || iItem == -1) return 0; ListView_GetItemText(hWndlist,iItem,iSubItem,szText,16); ListView_GetSubItemRect(hWndlist,iItem,iSubItem,LVIR_LABEL,rect); if(iItem != -1) { rt.left=rect.left+ltrt.left+2; rt.top=rect.top+ltrt.top +1; rt.right=rect.right-rect.left-3; rt.bottom=rect.bottom-rect.top; ::SetWindowPos(hedit,HWND_TOP,??? ?//改变窗口尺寸 rt.left,rt.top, rt.right,rt.bottom,NULL); ::ShowWindow(hedit,SW_SHOW); ::SetFocus(hedit); ::SetWindowText(hedit,szText);

文档评论(0)

1亿VIP精品文档

相关文档