⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mylistview.cpp

📁 VC
💻 CPP
字号:
// MyListView.cpp : implementation file
//

#include "stdafx.h"
#include "MyEdit.h"
#include "MyListView.h"
#include "MyEditDoc.h"
#include "MyEditView.h"
#include "MyTreeVIew.h"
#include "MainFrm.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CMyListView

IMPLEMENT_DYNCREATE(CMyListView, CListView)

CMyListView::CMyListView()
{
}

CMyListView::~CMyListView()
{
}


BEGIN_MESSAGE_MAP(CMyListView, CListView)
	//{{AFX_MSG_MAP(CMyListView)
	ON_WM_LBUTTONDBLCLK()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CMyListView drawing

void CMyListView::OnDraw(CDC* pDC)
{
	CDocument* pDoc = GetDocument();
	// TODO: add draw code here
}

/////////////////////////////////////////////////////////////////////////////
// CMyListView diagnostics

#ifdef _DEBUG
void CMyListView::AssertValid() const
{
	CListView::AssertValid();
}

void CMyListView::Dump(CDumpContext& dc) const
{
	CListView::Dump(dc);
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CMyListView message handlers

void CMyListView::OnInitialUpdate() 
{
	m_index=0;
	CListView::OnInitialUpdate();
	ListView_SetExtendedListViewStyle(GetListCtrl(), LVS_EX_FULLROWSELECT); 
	CListCtrl & m_listView = GetListCtrl();
	m_listView.ModifyStyle(NULL, LVS_REPORT);
	LV_COLUMN lvColumn;
    lvColumn.mask=LVCF_FMT|LVCF_WIDTH|LVCF_TEXT|LVCF_SUBITEM;
    lvColumn.fmt=LVCFMT_CENTER;
    lvColumn.cx=75;

    lvColumn.iSubItem=0;
    lvColumn.pszText="Column 0";
    m_listView.InsertColumn(0,&lvColumn);

    lvColumn.iSubItem=1;
    lvColumn.pszText="Column 1";
    m_listView.InsertColumn(1,&lvColumn);

    lvColumn.iSubItem=2;
    lvColumn.pszText="Column 2";
    m_listView.InsertColumn(2,&lvColumn);

    lvColumn.iSubItem=3;
    lvColumn.pszText="Column 3";
    m_listView.InsertColumn(3,&lvColumn);

	LV_ITEM lvitem;
    lvitem.mask=WS_VISIBLE|WS_CHILD|WS_BORDER|WS_GROUP|LVS_REPORT|LVS_NOSORTHEADER|LVS_EDITLABELS|LVIF_TEXT|LVIF_IMAGE|LVIF_STATE;
    lvitem.state=0;
    lvitem.stateMask=0;
    lvitem.iImage=0;

    lvitem.iItem=0;
    lvitem.iSubItem=0;
    lvitem.pszText="Item 0";
    m_listView.InsertItem(&lvitem);
    m_listView.SetItemText(0,1,"sub item 0.1");
    m_listView.SetItemText(0,2,"sub item 0.2");
    m_listView.SetItemText(0,3,"sub item 0.3");
    m_listView.SetItemText(0,4,"sub item 0.4");
	//lvitem.mask=WS_VISIBLE|WS_CHILD|WS_BORDER|WS_GROUP|LVS_REPORT|LVS_NOSORTHEADER|LVS_EDITLABELS|LVIF_TEXT|LVIF_IMAGE|LVIF_STATE;
    lvitem.iItem=1;
    lvitem.iSubItem=0;
    lvitem.pszText="Item 1";
    m_listView.InsertItem(&lvitem);
    m_listView.SetItemText(1,1,"sub item 1.1");
    m_listView.SetItemText(1,2,"sub item 1.2");
    m_listView.SetItemText(1,3,"sub item 1.3");
    m_listView.SetItemText(1,4,"sub item 1.4");

    lvitem.iItem=2;
    lvitem.iSubItem=0;
    lvitem.pszText="Item 2";
    m_listView.InsertItem(&lvitem);
    m_listView.SetItemText(2,1,"sub item 2.1");
    m_listView.SetItemText(2,2,"sub item 2.2");
    m_listView.SetItemText(2,3,"sub item 2.3");
    m_listView.SetItemText(2,4,"sub item 2.4");
 
	// TODO: Add your specialized code here and/or call the base class
	
}

void CMyListView::OnLButtonDblClk(UINT nFlags, CPoint point) 
{
	// TODO: Add your message handler code here and/or call default
		CMyEditDoc * pDoc=(class CMyEditDoc *)GetDocument();	
		CListCtrl & m_listView = GetListCtrl();
		int num=ListView_GetSelectionMark(m_listView);
		CMainFrame* MainFrame1=(CMainFrame*)this->GetParent()->GetParent(); 
        CMyEditView* View4=(CMyEditView*)MainFrame1->m_wndSplitter.GetPane(2,0); 
        CMyListView* View1=(CMyListView*)MainFrame1->m_wndSplitter.GetPane(0,0); 
        CMyTreeVIew* View2=(CMyTreeVIew*)MainFrame1->m_wndSplitter.GetPane(1,0); 
		MainFrame1->m_size=1;
		if (m_index==0)
		{
   View1->SetWindowPos(0, 0, 0, 1500 , 1000, SWP_SHOWWINDOW);
   View2->SetWindowPos(0, 0, 1000, 1500, 1000, SWP_SHOWWINDOW);
   View4->SetWindowPos(0, 0, 1000, 1500, 1000, SWP_SHOWWINDOW);
   m_index=1;
		}
		else
		{
   View1->SetWindowPos(0, 0, 0, 1500 , 150, SWP_SHOWWINDOW);
   View2->SetWindowPos(0, 0, 150, 1500, 150, SWP_SHOWWINDOW);
   View4->SetWindowPos(0, 0, 300, 1500, 1000, SWP_SHOWWINDOW);
  m_index=0;
		}
   MainFrame1->m_wndSplitter.SetScrollStyle(WS_HSCROLL);
		if (num==0)
	{
		pDoc->str1="Item 0";
		pDoc->str2="Sub item 0.1";
		pDoc->str3="Sub item 0.2";
		pDoc->str4="Sub item 0.3";
		View4->m_int=1;
		View4->m_index(); 

	}
		else if(num==1)
	{
		pDoc->str1="Item 1";
		pDoc->str2="Sub item 1.1";
		pDoc->str3="Sub item 1.2";
		pDoc->str4="Sub item 1.3";
		View4->m_int=1;
		View4->m_index(); 

	}
		else if (num==2)
	{
		pDoc->str1="Item 2";
		pDoc->str2="Sub item 2.1";
		pDoc->str3="Sub item 2.2";
		pDoc->str4="Sub item 2.3";
		View4->m_int=1;
		View4->m_index(); 
		}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -