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

📄 import.cpp

📁 数据加密算法
💻 CPP
字号:
#include "pch.h"
#include "util.h"
#include "main.h"
#include "doc.h"
#include "image.h"
#include "import.h"
#include "export.h"
#include "add.h"
#include "debug.h"

IMPLEMENT_DYNCREATE ( CImportView , CTreeView )

BEGIN_MESSAGE_MAP ( CImportView , CTreeView )
	ON_WM_CREATE ( ) 
	ON_COMMAND ( IDM_EDIT_PROPERTY , OnEditProperty )
	ON_NOTIFY_REFLECT ( TVN_SELCHANGED , OnTvnSelChanged )
END_MESSAGE_MAP ( )

CImportView::CImportView ( )
{
}

CImportView::~CImportView ( )
{
}

CDancerDoc* CImportView::GetDocument ( )
{
	return ( CDancerDoc* ) CView::GetDocument ( ) ;
}

void CImportView::OnInitialUpdate ( )
{
	CTreeView::OnInitialUpdate ( ) ;

	CDancerDoc* pd = GetDocument ( ) ;
	CTreeCtrl& ctrl = GetTreeCtrl ( ) ;

	pd->m_pImgFile->Present ( ctrl ) ;
	ctrl.Expand ( ctrl.GetChildItem ( TVI_ROOT ) , TVE_EXPAND ) ;

	pd->m_pImportView = this ;
}

int CImportView::OnCreate ( LPCREATESTRUCT lpCreateStruct )
{
	if ( -1 == CTreeView::OnCreate ( lpCreateStruct ) )
		return -1 ;

	CTreeCtrl& ctrl = GetTreeCtrl ( ) ;

	// modify style of tree control

	SetWindowLong ( 
		ctrl.GetSafeHwnd ( ) , 
		GWL_STYLE ,
		WS_CHILD | 
		WS_VISIBLE |
		TVS_HASBUTTONS | 
		TVS_HASLINES |
		TVS_SHOWSELALWAYS | 
		TVS_LINESATROOT |
		TVS_DISABLEDRAGDROP ) ;

	CMainApp* p = ( CMainApp* ) AfxGetApp ( ) ;
	ctrl.SetImageList ( &p->m_imgTree , TVSIL_NORMAL ) ;

	return 0 ;
}

void CImportView::OnTvnSelChanged ( NMHDR* pNotifyStruct , LRESULT *pResult )
{
	LPNMTREEVIEW lpNMTreeView = ( LPNMTREEVIEW ) pNotifyStruct ;

	GetDocument ( )->m_pExportView->Refresh (
		( Export* )
		GetTreeCtrl ( ).GetItemData ( lpNMTreeView->itemNew.hItem ) ) ;

	*pResult = 0 ;
}

void CImportView::RefreshCurrent ( BOOL bHook )
{
	CTreeCtrl& ctrl = GetTreeCtrl ( ) ;
	HTREEITEM h = ctrl.GetSelectedItem ( ) ;

	if ( bHook ) ctrl.SetItemState ( h, -1, TVIS_BOLD ) ;
	else ctrl.SetItemState ( h, 0, TVIS_BOLD ) ;
}

void CImportView::ExpandTree ( CTreeCtrl& ctrl , HTREEITEM h , BOOL bExpand )
{
	if ( bExpand == TRUE )
	{
		ctrl.Expand ( h , TVE_EXPAND ) ;
	}
	else
	{
		ctrl.Expand ( h , TVE_COLLAPSE ) ;
	}

	HTREEITEM hi = ctrl.GetChildItem ( h ) ;
	while ( hi != NULL )
	{
		ExpandTree ( ctrl , hi , bExpand ) ;
		hi = ctrl.GetNextItem ( hi , TVGN_NEXT ) ;
	}
}

void CImportView::OnEditProperty ( )
{
	CTreeCtrl& ctl = GetTreeCtrl ( ) ;
	HTREEITEM ti = ctl.GetSelectedItem ( ) ;
	if ( !ti )
		return ;

	Export* pe = ( Export* ) ctl.GetItemData ( ti ) ;
	SHELLEXECUTEINFO shl ;
	ZeroMemory ( &shl , sizeof ( SHELLEXECUTEINFO ) ) ;
	shl.cbSize = sizeof ( SHELLEXECUTEINFO ) ;
	shl.fMask = SEE_MASK_INVOKEIDLIST ;
	shl.lpFile = pe->m_pModule->m_strPath ;
	shl.lpVerb = "properties" ;
	ShellExecuteEx ( &shl ) ;
}

⌨️ 快捷键说明

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