VC的List Control和Delphi的ListView对比

参照delphi源码,二者本质上应该都是对windows标准控件SysListView32做封装,

IDE方面就不说太多,VC确实没有Delphi方便,不过也不难用,无非是多了几行调用。

1.添加Column:

void CCFSBrowserDlg::InitListView()

{

LVCOLUMN* pColumn;

pColumn = new tagLVCOLUMNA;

pColumn->pszText=(char*)"修改日期";

ListView1.InsertColumn(0, pColumn);

pColumn = new tagLVCOLUMNA;

pColumn->pszText=(char*)"大小";

ListView1.InsertColumn(0, pColumn);

pColumn = new tagLVCOLUMNA;

pColumn->pszText=(char*)"类型";

ListView1.InsertColumn(0, pColumn);

pColumn = new tagLVCOLUMNA;

pColumn->pszText=(char*)"名称";

ListView1.InsertColumn(0, pColumn);

ListView1.SetColumnWidth(0, 100);

ListView1.SetColumnWidth(1, 100);

ListView1.SetColumnWidth(2, 100);

ListView1.SetColumnWidth(3, 100);

}

以上代码通过一个公用的pColumn指针变量,再重复用new申请对应数据类型tagLVCOLUMNA的内存,从本质上就是申请一块与tagLVCOLUMNA相同大小的内存,再把内存地址赋值给pColumn,再初始化pszText字段,调用InsertColumn即可。初学VC,部分代码只是按照自己理解的调用方法写出来的,感觉别扭,不过相信以后熟悉了会得心应手的。

待续。。。

最简单通用的方法:

ListView1.InsertColumn(0,"名称",LVCFMT_LEFT,100,0);

ListView1.InsertColumn(1,"大小",LVCFMT_LEFT,100,1);

...

...

.

原文地址:https://www.cnblogs.com/caibirdy1985/p/4232983.html