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

📄 acttreeview.cpp

📁 對網只操作的函數,很不錯
💻 CPP
字号:
// ActTreeView.cpp : implementation file
//

#include "stdafx.h"
#include "GetLink.h"
#include "ActTreeView.h"
#include "PreView.h"
#include "AdrCtrlView.h"

#include "GetLinkDoc.h"
#include "MainFrm.h"

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

/////////////////////////////////////////////////////////////////////////////
// CActTreeView

IMPLEMENT_DYNCREATE(CActTreeView, CTreeView)

CActTreeView::CActTreeView()
{
}

CActTreeView::~CActTreeView()
{
}


BEGIN_MESSAGE_MAP(CActTreeView, CTreeView)
	//{{AFX_MSG_MAP(CActTreeView)
	ON_WM_CREATE()
	ON_NOTIFY_REFLECT(NM_DBLCLK, OnDblclk)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CActTreeView drawing

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

/////////////////////////////////////////////////////////////////////////////
// CActTreeView diagnostics

#ifdef _DEBUG
void CActTreeView::AssertValid() const
{
	CTreeView::AssertValid();
}

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

/////////////////////////////////////////////////////////////////////////////
// CActTreeView message handlers

int CActTreeView::OnCreate(LPCREATESTRUCT lpCreateStruct) 
{
	if (CTreeView::OnCreate(lpCreateStruct) == -1)
		return -1;
	
	// TODO: Add your specialized creation code here
	m_pImageList = new CImageList();
	m_pImageList->Create(IDB_IMGLIST,16,2,RGB(0,255,0));

    CTreeCtrl& tc = GetTreeCtrl();
    // Set tree control styles
    long style = GetWindowLong(tc.m_hWnd,GWL_STYLE);
    style |= (TVS_HASLINES | TVS_LINESATROOT | TVS_HASBUTTONS | 
            TVS_SHOWSELALWAYS | TVS_DISABLEDRAGDROP);
    SetWindowLong(tc.m_hWnd,GWL_STYLE,style);

	tc.SetImageList( m_pImageList, TVSIL_NORMAL );

    // Insert some items
    tc.InsertItem("查看属性",0,1); 
    tc.InsertItem("本地预览",0,1);
    tc.InsertItem("IE预览",0,1);
    tc.InsertItem("IE快捷方式",0,1);
    tc.InsertItem("站点爬行",0,1);
    tc.InsertItem("最新更新",0,1);

  
    return 0;
}

void CActTreeView::OnDblclk(NMHDR* pNMHDR, LRESULT* pResult) 
{
	// TODO: Add your control notification handler code here
    CMainFrame* pMainFrm =(CMainFrame*)AfxGetApp()->m_pMainWnd;
	CCreateContext* pContext=NULL;
	CGetLinkDoc *pDoc=(CGetLinkDoc *)GetDocument();

	CTreeCtrl& cThisTree = GetTreeCtrl();
	HTREEITEM hSelect	= cThisTree.GetSelectedItem();

	if(cThisTree.GetItemText(hSelect)=="查看属性")
	{
		pMainFrm->m_wndSplitter3.DeleteView(0,1);
		pMainFrm->m_wndSplitter3.CreateView(0,1,RUNTIME_CLASS(CAdrCtrlView),
			                            CSize(0,0),pContext);
		pMainFrm->m_wndSplitter3.RecalcLayout();
        pDoc->m_ViewType="CAdrCtrlView";
	}
	if(cThisTree.GetItemText(hSelect)=="本地预览")
	{
	    CGetLinkDoc *pDoc=(CGetLinkDoc *)GetDocument();
		if(pDoc->m_strName=="")
		{AfxMessageBox("您尚未选中网址,故无法预览!");}
		else
		{
		pMainFrm->m_wndSplitter3.DeleteView(0,1);
		pMainFrm->m_wndSplitter3.CreateView(0,1,RUNTIME_CLASS(CPreView),
			                            CSize(0,0),pContext);
		pMainFrm->m_wndSplitter3.RecalcLayout();
        pDoc->m_ViewType="CPreView";
		}
	}
	if(cThisTree.GetItemText(hSelect)=="IE预览")
	{
	    CGetLinkDoc *pDoc=(CGetLinkDoc *)GetDocument();
		if(pDoc->m_strName=="")
		AfxMessageBox("您尚未选中网址,故无法预览!");
		else	
	    ShellExecute(NULL,"open",(LPCTSTR)(pDoc->m_strName),NULL,NULL,SW_SHOWNORMAL);	
	}
	*pResult = 0;
}

⌨️ 快捷键说明

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