在Windows应用程序中添加ListControl控件的几种方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

一、在Windows应用程序中添加ListControl控件的几种方法

1、在对话框中添加控件:

创建对话框应用程序,在资源视图中添加对话框。如下图所示,在控件工具条中选择ListControl控件添加到对话框中,并调整控件尺寸。在ListControl控件的属性页中设置控件样式(Styles)和扩展样式等。为了显示详细数据信息,可以设置控件的显示风格为报表视图(Report)。

为了在对话框中使用控件,需要在ClassWizard中为对话框类添加控件成员变量,如下图所示:

执行以上操作后,系统自动添加了一个ClistControl对象,并与ListControl控件资源关联,相关代码如下:

// ListDialogDlg.h : header file

......

public:

CListCtrl m_cListCtrl;

......

// ListDialogDlg.cpp : implementation file

......

void CListDialogDlg::DoDataExchange(CDataExchange* pDX)

{

CDialog::DoDataExchange(pDX);

//{{AFX_DATA_MAP(CListDialogDlg)

DDX_Control(pDX, IDC_LIST_CTRL, m_cListCtrl);

//}}AFX_DATA_MAP

}

......

因为本例只为演示在对话框中添加ListControl控件,所以只在对话框初始化消息函数中添加了以下显示控件的示例代码(代码含义请参照MSDN文献):

BOOL CListDialogDlg::OnInitDialog()

{

CDialog::OnInitDialog();

......

// TODO: Add extra initialization here

DWORD exstyle = m_cListCtrl.GetExtendedStyle();

m_cListCtrl.SetExtendedStyle(exstyle | LVS_EX_FULLROWSELECT |

LVS_EX_GRIDLINES |

LVS_EX_CHECKBOXES | WS_EX_STATICEDGE );

CRect rect;

m_cListCtrl.GetClientRect(&rect);

int nColInterval = rect.Width()/5;

m_cListCtrl.InsertColumn(0, _T("Item Name"), LVCFMT_LEFT, nColInterval*3);

m_cListCtrl.InsertColumn(1, _T("Value"), LVCFMT_LEFT, nColInterval);

m_cListCtrl.InsertColumn(2, _T("Time"), LVCFMT_LEFT, rect.Width()-

4*nColInterval);

m_cListCtrl.InsertItem(0,"name");

m_cListCtrl.SetItemText(0,1,"value");

m_cListCtrl.SetItemText(0,2,"time");

......

return TRUE; // return TRUE unless you set the focus to a control

}

2、在单文档视图中自行添加ListControl控件:

创建单文档应用程序,如下图所示为视图类添加CListCtrl对象成员变量:

如下图所示,在资源视图中打开String Table资源,在右键菜单中选择new string,为将要创建的ListControl控件添加资源编号:

为创建和显示控件,在视图的初始化消息函数中添加如下代码:

void CAddListView::OnInitialUpdate()

{

CView::OnInitialUpdate();

// TODO: Add your specialized code here and/or call the base class

m_cListCtrl.Create( LVS_REPORT,CRect(0,0,800,600),this,IDC_LISTCTRL);

m_cListCtrl.ModifyStyle(0,LVS_REPORT|LVS_SHOWSELALWAYS|LVS_SORTAS CENDING);

//m_cListCtrl.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE,0,

LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT|LVS_EX_CHECKBOXES); m_cListCtrl.ShowWindow(SW_SHOW);

CRect rect;

m_cListCtrl.GetClientRect(&rect);

int nColInterval = rect.Width()/5;

m_cListCtrl.InsertColumn(0, _T("Item Name"), LVCFMT_LEFT, nColInterval*3);

m_cListCtrl.InsertColumn(1, _T("Value"), LVCFMT_LEFT, nColInterval);

m_cListCtrl.InsertColumn(2, _T("Time"), LVCFMT_LEFT, rect.Width()-

4*nColInterval);

m_cListCtrl.InsertItem(0,"name");

m_cListCtrl.SetItemText(0,1,"value");

m_cListCtrl.SetItemText(0,2,"time");

}

3、在ListView视图中显示ListControl控件:

创建单文档应用程序,如下图所示,在选择窗口视图类型时,选择CListView视图:

相关文档
最新文档