失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > Codejock.Xtreme.Toolkit.Pro.v15.3.1 for MFC 15种皮肤切换

Codejock.Xtreme.Toolkit.Pro.v15.3.1 for MFC 15种皮肤切换

时间:2024-07-08 03:39:42

相关推荐

Codejock.Xtreme.Toolkit.Pro.v15.3.1 for MFC 15种皮肤切换

下载地址:/detail/qing666888/9612825

Codejock.Xtreme.Toolkit.Pro.v15.3.1 for MFC 15种皮肤切换 1.要进行编译请先自行安装Codejock.Xtreme.Toolkit.Pro.v15.3.1(正常安装并完整编译出工程时所需函式库才能继续以下步骤)

2.大致上这样~有缺变量声明的自己补上~因为是撷取自某程序中一小段代码~

3.15种皮肤是内建的~当然还能自行设定更多种类~

4.其实没有15个皮肤文件,只是一个皮肤文件包含了几种不同颜色风格的而已

先创建一个MFC工程~再开启StdAfx.h加入一行代码~

#include <XTToolkitPro.h> // Xtreme Toolkit Pro components

直接编译~若有正常完整安装15.3.1~编译完工程内会多一堆.h档~

再到工程源码选单中新增Styles资料夹并加入皮肤设置档案~

然后再到继承CDialog的自订Class原型定义下声明2个Public变量~

int m_nVisualTheme;

CString m_strStylesPath;

再到Class本体下加入一串代码

m_nVisualTheme=-1;TCHAR szStylesPath[_MAX_PATH];VERIFY(::GetModuleFileName(AfxGetApp()->m_hInstance, szStylesPath, _MAX_PATH)); m_strStylesPath = szStylesPath;int nIndex = m_strStylesPath.ReverseFind(_T('\\'));if (nIndex > 0)m_strStylesPath = m_strStylesPath.Left(nIndex);elsem_strStylesPath.Empty();m_strStylesPath += _T("\\Styles\\");XTPSkinManager()->SetApplyOptions(XTPSkinManager()->GetApplyOptions() | xtpSkinApplyMetrics);XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Vista.cjstyles"), _T("NormalBlack2.ini"));

在窗口里使用向导新增鼠标左键事件~并在事件中加入一串代码~

UpdateData();if(m_nVisualTheme!=16)m_nVisualTheme++;elsem_nVisualTheme=0;switch (m_nVisualTheme){ case 0:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("WinXP.Luna.cjstyles"), _T("NormalBlue.ini"));break;case 1:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("WinXP.Luna.cjstyles"), _T("NormalAqua.ini"));break;case 2:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("WinXP.Royale.cjstyles"), _T("NormalRoyale.ini"));break;case 3:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Office.cjstyles"), _T("NormalBlue.ini"));break;case 4:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Office.cjstyles"), _T("NormalAqua.ini"));break;case 5:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Office.cjstyles"), _T("NormalSilver.ini"));break;case 6:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Office.cjstyles"), _T("NormalBlack.ini"));break;case 7:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Vista.cjstyles"), _T("NormalBlue.ini"));break;case 8:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Vista.cjstyles"), _T("NormalSilver.ini"));break;case 9:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Vista.cjstyles"), _T("NormalBlack.ini"));break;case 10:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Vista.cjstyles"), _T("NormalBlack2.ini"));break;case 11:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Codejock.cjstyles"), _T("NormalBlue.ini"));break;case 12:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Codejock.cjstyles"), _T("NormalBlack.ini"));break;case 13:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Office.cjstyles"), _T("NormalBlue.ini"));break;case 14:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Office.cjstyles"), _T("NormalSilver.ini"));break;case 15:XTPSkinManager()->LoadSkin(m_strStylesPath + _T("Office.cjstyles"), _T("NormalBlack.ini"));break;default:XTPSkinManager()->LoadSkin(_T(""), _T("")); break;}RedrawWindow(0, 0, RDW_INVALIDATE|RDW_UPDATENOW|RDW_ERASE|RDW_ALLCHILDREN);

再重新编译就完成了~若是使用静态编译法~程序拿到WIN7 64bits的OS中仍可运行~

但是档案会很大~

尝试过把已完成的MFC工程如上加入代码~编译后程序就多了皮肤切换的功能~

如果编译时出现找不到???.lib档时~

一则可能是15.3.1安装不完全~

二则可能是要去VC6环境设置中把lib目录路径手动设进去~

三则可能是要去VC6环境设置中把.h目录路径手动设进去~

四则可能是lib版本为Unicode或ASCII Code的问题~

初学MFC还没法像VB6用起来那么顺手~代码就长了~求缩短法~

P.S v15.0.1记得内建皮肤少了Office 的~

如果觉得《Codejock.Xtreme.Toolkit.Pro.v15.3.1 for MFC 15种皮肤切换》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。