(1)步骤一:
在CMedicListVIew.h中添加代码(声明消息函数):afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct)
(2)步骤二:
在CMdicListVIew.cpp中的PreCreateWindow()函数之前添加OnCreate(LPCREATESTRUCT lpCreateStruct)函数的代码,代码如下:
int CMdicListVIew::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
return -1
if (!m_wndToolBar.CreateEx(this, TBSTYLE_FLAT, WS_CHILD | WS_VISIBLE | CBRS_TOP
| CBRS_GRIPPER | CBRS_TOOLTIPS | CBRS_FLYBY | CBRS_SIZE_DYNAMIC) ||
!m_wndToolBar.LoadToolBar(IDR_MAINFRAME))
{
TRACE0("Failed to create toolbar\n")
return -1 // fail to create
}
if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status bar\n")
return -1 // fail to create
}
// TODO: Delete these three lines if you don't want the toolbar to
// be dockable
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY)
EnableDocking(CBRS_ALIGN_ANY)
DockControlBar(&m_wndToolBar)
return 0
}
这样就可以了!
文档窗口的话需要将其基类设为CListView,然后用定义一个列表控件类的引用,CListCtrl&m_ListCtrl = GetListView(),(一定要是引用),之后通过它的成员函数InsertColumn(),InsertItem()分别添加列表头和列表项即可。在MFC中CListView是在CView和CListCtrl中继承的,而该类的列表功能主要从 CListCtrl 获得.可以使用下列方式来获得 CListView 中的 CListCtrl 成员
CListCtrl&theCtrl = GetListCtrl()
然后可以在 theCtrl 中添加需要的列表项
下面的例子来自 MSDN 供参考
void CMyListView::OnInitialUpdate()
{
CListView::OnInitialUpdate()
// this code only works for a report-mode list view
ASSERT(GetStyle() &LVS_REPORT)
// Gain a reference to the list control itself
CListCtrl&theCtrl = GetListCtrl()
// Insert a column. This override is the most convenient.
theCtrl.InsertColumn(0, _T("Player Name"), LVCFMT_LEFT)
// The other InsertColumn() override requires an initialized
// LVCOLUMN structure.
LVCOLUMN col
col.mask = LVCF_FMT | LVCF_TEXT
col.pszText = _T("Jersey Number")
col.fmt = LVCFMT_LEFT
theCtrl.InsertColumn(1, &col)
// Set reasonable widths for our columns
theCtrl.SetColumnWidth(0, LVSCW_AUTOSIZE_USEHEADER)
theCtrl.SetColumnWidth(1, LVSCW_AUTOSIZE_USEHEADER)
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)