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

📄 skindlg.cpp

📁 一个快捷面板,可以将自己常用的程序放在其中!
💻 CPP
字号:
// SkinDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "LinkPanel.h"
#include "SkinDlg.h"


// CSkinDlg 对话框

IMPLEMENT_DYNAMIC(CSkinDlg, CDialog)
CSkinDlg::CSkinDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CSkinDlg::IDD, pParent)
{
}

CSkinDlg::~CSkinDlg()
{
}

void CSkinDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
}


BEGIN_MESSAGE_MAP(CSkinDlg, CDialog)
END_MESSAGE_MAP()


// CSkinDlg 消息处理程序


BOOL CSkinDlg::SetSkin(CString file)
{
	m_skinWin.LoadSkin( file );
	m_btnres.LoadSkin( file );
	if ( m_bFirst )
	{
		m_skinWin.InstallSkin( this );
		EnumChildWindows( m_hWnd, EnumChildProc, (LPARAM)this );

		m_bFirst = FALSE;
	}
	SetWindowPos( 0, 0, 0, 0, 0, SWP_NOSIZE | SWP_NOMOVE |SWP_FRAMECHANGED );
	return TRUE;

}

BOOL CSkinDlg::SubClassButton( HWND hwnd )
{
	CSkinButton * btn = new CSkinButton();
	CWnd* pWnd = CWnd::FromHandlePermanent(hwnd);
	if ( pWnd == NULL)
	{
		//btn->SubclassWindow(hwnd);
		btn->SetResource(&m_btnres);

		return TRUE;
	}
	return FALSE;
}

void CSkinDlg::SetStyle() 
{
	CString sPath = _T("");
	GetModuleFileName(AfxGetInstanceHandle(), sPath.GetBuffer(MAX_PATH), MAX_PATH);
	sPath.ReleaseBuffer(MAX_PATH);
	sPath = sPath.Left(sPath.ReverseFind('\\') + 1);
	if(!m_bStyle)
		sPath = sPath + _T("skin\\neostyle\\theme.ini");
	else
		sPath += _T("skin\\xpstyle\\theme.ini");

	SetSkin(sPath);
}

BOOL CALLBACK CSkinDlg::EnumChildProc(  HWND hwnd,      // handle to child window
										LPARAM lParam   // application-defined value
										)
{
	char classname[200];
	CSkinDlg *dlg = (CSkinDlg*)lParam;
	DWORD style;

	GetClassName( hwnd, classname, 200 );
	style = GetWindowStyle( hwnd );
	if ( strcmp( classname, "Button" ) == 0 )
	{
		style = (UINT)GetWindowLong(hwnd, GWL_STYLE) & 0xff;
		if ( style == BS_PUSHBUTTON || style == BS_DEFPUSHBUTTON )
			dlg->SubClassButton( hwnd );
	}


	return TRUE;
}

⌨️ 快捷键说明

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