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

📄 commandbandsppc.cpp

📁 PocketPC上很好用的文件管理器,而且里面的封装性很好,学windows mobile开发的兄弟,值得一看
💻 CPP
📖 第 1 页 / 共 2 页
字号:
#include "GSFinder.h"
#include "CommandBandsPPC.h"
#include "ListView.h"
TCHAR g_szMainTipsStrings[][32] = {
	_T(""), _T(""), _T(""), IDS_UPFOLDER, IDS_REFRESH,
	IDS_FOLDERVIEW, IDS_CTRLKEY, IDS_SHOWTOOLBAR
};
//MOD START TODA
TCHAR g_szToolTipsStrings[][32] = {
	IDS_BACK, IDS_FRONT,
	IDS_DELETE, IDS_PROPERTY, IDS_CUT, IDS_COPY, IDS_PASTE,
	IDS_LISTSTYLE, IDS_GOTOFOLDER
};
//MOD END
TCHAR g_szAddrTipsStrings[] = IDS_GOTOFOLDER;
LPTSTR g_lpszMainTips[8];
LPTSTR g_lpszToolTips[9];

WNDPROC Org_CmbEditProc = NULL;
///////////////////////////////////////////////////////////////
LRESULT CALLBACK CmbEditProc(HWND hWnd, UINT message, WPARAM wParam, LPARAM lParam)
{
	switch (message) 
	{
		//ADD START TODA
		case WM_SETFOCUS:
			g_MainWnd.m_CmdBands.SetEnableItemSelected3();
			g_MainWnd.m_CmdBands.SetEnableEditPasteBef();
			break;
		case WM_KILLFOCUS:
			g_MainWnd.m_CmdBands.SetEnableEditPasteAft();
			break;
		//ADD END
		case WM_KEYDOWN:	//MOD TODA (WM_KEYUP->WM_KEYDOWN)
		{
			if (wParam == VK_RETURN) {
				g_MainWnd.m_ListView.OnViewUpdate();
				return 0;
			}
			break;
		}
		default:
			break;
	}
	return CallWindowProc(Org_CmbEditProc, hWnd, message, wParam, lParam);
}
///////////////////////////////////////////////////////////////
CCmdBands::CCmdBands()
{
	m_Settings.bShowToolBar = TRUE;
	m_Settings.bShowAddressBar = TRUE;
}

///////////////////////////////////////////////////////////////
CCmdBands::~CCmdBands()
{
}

///////////////////////////////////////////////////////////////
//僐儅儞僪僶儞僪偺嶌惉
void CCmdBands::Init(HWND hwndParent)
{
	GetSettings();

	CreateMenuBar(hwndParent);
	CreateToolBar(hwndParent);
	CreateAddressBar(hwndParent);

	ShowWindow(m_hAddressbar, m_Settings.bShowAddressBar?SW_SHOW:SW_HIDE);
	ShowWindow(m_hToolbar, m_Settings.bShowToolBar?SW_SHOW:SW_HIDE);
	
	SetCheckViewToolBar();
	SetCheckViewAddressBar();

	GetRecent();
}

///////////////////////////////////////////////////////////////
void CCmdBands::Destroy()
{
	SaveSettings();
	SaveRecent();
	DestroyWindow(m_hWnd);
}

///////////////////////////////////////////////////////////////
void CCmdBands::SetFolderName(LPCTSTR lpszPath)
{
	TCHAR szPath[MAX_PATH];
	wcscpy(szPath, GetRootName());
	if (wcslen(lpszPath))
		wcscpy(szPath, lpszPath);

	int nIndex = SendMessage(m_hComboBox, CB_FINDSTRINGEXACT, 0, (LPARAM)szPath);
	if (nIndex != CB_ERR)
		SendMessage(m_hComboBox, CB_DELETESTRING, nIndex, 0);

	SendMessage(m_hComboBox, CB_INSERTSTRING, 0, (LPARAM)szPath);
	SendMessage(m_hComboBox, CB_SETCURSEL, 0, 0);
}

///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckListStyle(DWORD dwStyle, DWORD dwExStyle)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT); //mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	CheckMenuItem(hMenu, ID_VIEW_LARGEICON, (dwStyle == LVS_ICON)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	CheckMenuItem(hMenu, ID_VIEW_SMALLICON, (dwStyle == LVS_SMALLICON)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	CheckMenuItem(hMenu, ID_VIEW_LIST, (dwStyle == LVS_LIST)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	//MOD START TODA
	CheckMenuItem(hMenu, ID_VIEW_REPORT, (dwStyle == LVS_REPORT && !dwExStyle)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	CheckMenuItem(hMenu, ID_VIEW_REPORTLINE, (dwStyle == LVS_REPORT && dwExStyle)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	//MOD END
}

///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckSort(int nSort, BOOL bRaise)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT); //mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	CheckMenuItem(hMenu, ID_VIEW_SORT_NAME, (nSort == LIST_SORT_NAME)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	CheckMenuItem(hMenu, ID_VIEW_SORT_EXT, (nSort == LIST_SORT_EXT)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	CheckMenuItem(hMenu, ID_VIEW_SORT_SIZE, (nSort == LIST_SORT_SIZE)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	CheckMenuItem(hMenu, ID_VIEW_SORT_TIME, (nSort == LIST_SORT_TIME)?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	CheckMenuItem(hMenu, ID_VIEW_SORT_NOT_RAISE, bRaise?MF_BYCOMMAND|MF_UNCHECKED:MF_BYCOMMAND|MF_CHECKED);
}

///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckKeyOn(BOOL bCtrlOn, BOOL bShiftOn)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	//僐儞僩儘乕儖
	SendMessage(m_hWnd, TB_SETSTATE, ID_EDIT_CONTROL_ON, bCtrlOn?TBSTATE_CHECKED|TBSTATE_ENABLED:TBSTATE_ENABLED);
	CheckMenuItem(hMenu, ID_EDIT_CONTROL_ON, bCtrlOn?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	
	//僔僼僩
	CheckMenuItem(hMenu, ID_EDIT_SHIFT_ON, bShiftOn?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
}

///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckViewStatusWnd(BOOL bShowStatusWnd)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	CheckMenuItem(hMenu, ID_VIEW_STATUSBAR, bShowStatusWnd?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
}
//ADD START TODA
///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckViewFolder(BOOL bShowFolder)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	CheckMenuItem(hMenu, ID_VIEW_FOLDER, bShowFolder?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	SendMessage(m_hWnd, TB_SETSTATE, ID_VIEW_FOLDER, bShowFolder?TBSTATE_CHECKED|TBSTATE_ENABLED:TBSTATE_ENABLED);
}
///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckViewSide(BOOL bViewSide)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	CheckMenuItem(hMenu, ID_VIEW_SIDE, bViewSide?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
}
///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckDragDrop(BOOL bDragDrop)
{
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	CheckMenuItem(hMenu, ID_EDIT_DRAGDROP, bDragDrop?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
}
//ADD END
///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckViewToolBar()
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	CheckMenuItem(hMenu, ID_VIEW_TOOLBAR, m_Settings.bShowToolBar?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
	SendMessage(m_hWnd, TB_SETSTATE, ID_VIEW_TOOLBAR, m_Settings.bShowToolBar?TBSTATE_CHECKED|TBSTATE_ENABLED:TBSTATE_ENABLED);
}
///////////////////////////////////////////////////////////////
void CCmdBands::SetCheckViewAddressBar()
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	CheckMenuItem(hMenu, ID_VIEW_ADDRESSBAR, m_Settings.bShowAddressBar?MF_BYCOMMAND|MF_CHECKED:MF_BYCOMMAND|MF_UNCHECKED);
}

///////////////////////////////////////////////////////////////
void CCmdBands::SetEnableUpperFolder(BOOL bEnable)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//mod by kawa
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	EnableMenuItem(hMenu, ID_VIEW_UPFOLDER, bEnable?MF_BYCOMMAND|MF_ENABLED:MF_BYCOMMAND|MF_GRAYED);
	SendMessage(m_hWnd, TB_SETSTATE, ID_VIEW_UPFOLDER, bEnable?TBSTATE_ENABLED:TBSTATE_INDETERMINATE);
}
//ADD START TODA
///////////////////////////////////////////////////////////////
void CCmdBands::SetEnableFront(BOOL bEnable)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	EnableMenuItem(hMenu, ID_GO_FRONT, bEnable?MF_BYCOMMAND|MF_ENABLED:MF_BYCOMMAND|MF_GRAYED);
	SendMessage(m_hToolbar, TB_SETSTATE, ID_GO_FRONT, bEnable?TBSTATE_ENABLED:TBSTATE_INDETERMINATE);
}
///////////////////////////////////////////////////////////////
void CCmdBands::SetEnableBack(BOOL bEnable)
{
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	EnableMenuItem(hMenu, ID_GO_BACK, bEnable?MF_BYCOMMAND|MF_ENABLED:MF_BYCOMMAND|MF_GRAYED);
	SendMessage(m_hToolbar, TB_SETSTATE, ID_GO_BACK, bEnable?TBSTATE_ENABLED:TBSTATE_INDETERMINATE);
}
///////////////////////////////////////////////////////////////
void CCmdBands::SetEnableCompressSelected(HMENU hMenu, HMENU hMenu2, int nPos, int nPos2, DWORD nCompDLL)
{
	HMENU hSubMenu = hMenu2;
	HMENU hSubMenu2 = hMenu2;
	if(nPos != -1)
		hSubMenu = GetSubMenu(hMenu2, nPos);
	if(nPos2 != -1)
		hSubMenu2 = GetSubMenu(hMenu2, nPos2);

	if(g_MainWnd.m_Compress.IsCompress(nCompDLL)) {
		EnableMenuItem(hMenu, ID_FILE_COMPRESS, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hSubMenu2, ID_FILE_COMPRESS, MF_BYCOMMAND|MF_ENABLED);
	} else {
		EnableMenuItem(hMenu, ID_FILE_COMPRESS, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hSubMenu2, ID_FILE_COMPRESS, MF_BYCOMMAND|MF_GRAYED);
	}

	if(g_MainWnd.m_Compress.IsUnCompress()) {
		EnableMenuItem(hMenu, ID_FILE_UNCOMPRESS, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hSubMenu, ID_FILE_UNCOMPRESS, MF_BYCOMMAND|MF_ENABLED);
	} else {
		EnableMenuItem(hMenu, ID_FILE_UNCOMPRESS, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hSubMenu, ID_FILE_UNCOMPRESS, MF_BYCOMMAND|MF_GRAYED);
	}
}
///////////////////////////////////////////////////////////////
void CCmdBands::SetEnableSearchSelected(HMENU hMenu, LPTSTR lpszPath)
{
	if(wcscmp(SEARCH_FOLDER_NAME, lpszPath)==0)
	{
		EnableMenuItem(hMenu, ID_FILE_CREATE_SHORTCUT, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_CREATEFOLDER, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_EDIT_PASTE_SHORTCUT, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_CREATEFOLDER, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_COMPRESS, MF_BYCOMMAND|MF_GRAYED);
	}
}
///////////////////////////////////////////////////////////////
void CCmdBands::SetEnableItemSelected()
{
	//ADD START TODA
	HWND hFocus = GetFocus();
	if(hFocus != g_MainWnd.m_ListView.m_hWnd)
		hFocus = NULL;
	//ADD END

	//MOD START TODA (from GSFinder ver.1.99)
	//HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETMENU, 0, 0);
	HMENU hMenu = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_FILE);//mod by kawa
	HMENU hMenu2 = (HMENU)SendMessage(m_hWnd, SHCMBM_GETSUBMENU, 0, ID_EDIT);//add by kawa
	if (hFocus && g_MainWnd.m_ListView.GetValidAndSelectedCount())	//MOD TODA
	{
		//儊僯儏乕傪桳岠偵
		EnableMenuItem(hMenu, ID_FILE_OPEN, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu, ID_FILE_OPEN_PARAM, MF_BYCOMMAND|MF_ENABLED);//add by kawa
		EnableMenuItem(hMenu, ID_FILE_CREATE_SHORTCUT, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu, ID_FILE_DELETE, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu, ID_FILE_RENAME, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu, ID_FILE_PROPERTY, MF_BYCOMMAND|MF_ENABLED);
		//EnableMenuItem(hMenu, ID_EDIT_CUT, MF_BYCOMMAND|MF_ENABLED);
		//EnableMenuItem(hMenu, ID_EDIT_COPY, MF_BYCOMMAND|MF_ENABLED);
		//EnableMenuItem(hMenu, ID_EDIT_COPY_FILE_NAME, MF_BYCOMMAND|MF_ENABLED);
		//EnableMenuItem(hMenu, ID_EDIT_COPY_FILE_PATH, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu2, ID_EDIT_CUT, MF_BYCOMMAND|MF_ENABLED); //mod by kawa
		EnableMenuItem(hMenu2, ID_EDIT_COPY, MF_BYCOMMAND|MF_ENABLED); //mod by kawa
		EnableMenuItem(hMenu2, ID_EDIT_COPY_FILE_NAME, MF_BYCOMMAND|MF_ENABLED); //mod by kawa
		EnableMenuItem(hMenu2, ID_EDIT_COPY_FILE_PATH, MF_BYCOMMAND|MF_ENABLED); //mod by kawa
		EnableMenuItem(hMenu, ID_FILE_COPY_FOLDER, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu, ID_FILE_MOVE_FOLDER, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu, ID_FILE_SHORTCUT_FOLDER, MF_BYCOMMAND|MF_ENABLED);
		//ADD START TODA (埑弅儊僯儏乕)
		//SetEnableCompressSelected(GetSubMenu(hMenu, 0), 0, 8, g_MainWnd.m_ListView.m_Settings.nCompDLL);
		SetEnableCompressSelected(hMenu,GetSubMenu(hMenu, 0), 0, 8, g_MainWnd.m_ListView.m_Settings.nCompDLL);
		//ADD END

		//僣乕儖僶乕傪桳岠偵
		SendMessage(m_hToolbar, TB_SETSTATE, ID_FILE_DELETE, TBSTATE_ENABLED);
		SendMessage(m_hToolbar, TB_SETSTATE, ID_FILE_PROPERTY, TBSTATE_ENABLED);
		SendMessage(m_hToolbar, TB_SETSTATE, ID_EDIT_CUT, TBSTATE_ENABLED);
		SendMessage(m_hToolbar, TB_SETSTATE, ID_EDIT_COPY, TBSTATE_ENABLED);

		if (g_MainWnd.m_ListView.IsSelectionFile())
		{
			EnableMenuItem(hMenu, ID_FILE_IR_SEND, MF_BYCOMMAND|MF_ENABLED);
			EnableMenuItem(hMenu, ID_FILE_TO_APP, MF_BYCOMMAND|MF_ENABLED);

			for (int i=0; i<g_MainWnd.m_ListView.m_nOpenAppInfoCount; i++)
				EnableMenuItem(hMenu, ID_FILE_OPEN_APP + i, MF_BYCOMMAND|MF_ENABLED);
		}
		else
		{
			EnableMenuItem(hMenu, ID_FILE_IR_SEND, MF_BYCOMMAND|MF_GRAYED);
			EnableMenuItem(hMenu, ID_FILE_TO_APP, MF_BYCOMMAND|MF_GRAYED);

			for (int i=0; i<g_MainWnd.m_ListView.m_nOpenAppInfoCount; i++)
				EnableMenuItem(hMenu, ID_FILE_OPEN_APP + i, MF_BYCOMMAND|MF_GRAYED);
		}
	}
	else if (hFocus && ListView_GetSelectedCount(g_MainWnd.m_ListView.m_hWnd))	//MOD TODA
	{
		//儊僯儏乕傪柍岠偵
		EnableMenuItem(hMenu, ID_FILE_OPEN, MF_BYCOMMAND|MF_ENABLED);
		EnableMenuItem(hMenu, ID_FILE_OPEN_PARAM, MF_BYCOMMAND|MF_ENABLED);//add by kawa
		EnableMenuItem(hMenu, ID_FILE_CREATE_SHORTCUT, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_DELETE, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_RENAME, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_PROPERTY, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_IR_SEND, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_COPY_FOLDER, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_MOVE_FOLDER, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_SHORTCUT_FOLDER, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_TO_APP, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu2, ID_EDIT_CUT, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu2, ID_EDIT_COPY, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu2, ID_EDIT_COPY_FILE_NAME, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu2, ID_EDIT_COPY_FILE_PATH, MF_BYCOMMAND|MF_GRAYED);
		//ADD START TODA
		EnableMenuItem(hMenu, ID_FILE_COMPRESS, MF_BYCOMMAND|MF_GRAYED);
		EnableMenuItem(hMenu, ID_FILE_UNCOMPRESS, MF_BYCOMMAND|MF_GRAYED);
		//ADD END

		for (int i=0; i<g_MainWnd.m_ListView.m_nOpenAppInfoCount; i++)
			EnableMenuItem(hMenu, ID_FILE_OPEN_APP + i, MF_BYCOMMAND|MF_GRAYED);

		//僣乕儖僶乕傪柍岠偵
		SendMessage(m_hToolbar, TB_SETSTATE, ID_FILE_DELETE, TBSTATE_INDETERMINATE);
		SendMessage(m_hToolbar, TB_SETSTATE, ID_FILE_PROPERTY, TBSTATE_INDETERMINATE);
		SendMessage(m_hToolbar, TB_SETSTATE, ID_EDIT_CUT, TBSTATE_INDETERMINATE);

⌨️ 快捷键说明

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