• MFC皮肤使用详细说明


    首先将SkinMagic.dll,SkinMagic.lib,SkinMagicLib.h,xpsteel.smf文件复制到工程目录下。
    1、在StdAfx.h末尾中加入
    #include "SkinMagicLib.h"
    #pragma comment(lib, "SkinMagic.lib")
    2、在C**App的头文件中添加成员变量m_blnSkinLoaded
    class C**App : public CWinApp
    {
       bool m_blnSkinLoaded;
    }
    3、在C**App的源文件中添加如下此代码
    BOOL C**App::InitInstance()
    {
    AfxEnableControlContainer();
            CWinApp::InitInstance();
    //skinmagic  
    //////////////////////////////////////////////////////////////////////////
    VERIFY( 1 == InitSkinMagicLib(AfxGetInstanceHandle(), NULL, NULL, NULL));
    if(0==LoadSkinFile("xpsteel.smf"))
    {
    m_blnSkinLoaded=FALSE;
    AfxMessageBox("加载皮肤失败。");
    }
    else
    m_blnSkinLoaded=TRUE;
    if(m_blnSkinLoaded)
    {
    VERIFY( 1 == SetWindowSkin( m_pMainWnd->m_hWnd , "MainFrame" ));
       //对话框类型的工程不要加这句话。
    VERIFY( 1 == SetDialogSkin( "Dialog" ) );
    }
    注意:当创建对话框类型的工程,把这一段代码放在函数体的前面位置;
    当创建文档类型的工程,把这一段代码放在函数体的后面位置,等待系统把窗口都初始化完毕。
    3、在类向导为C**App添加ExitInstance消息,编辑函数。
    即在source Files文件夹中的FloppyImage.cpp中加入
    int CFloppyImageApp::ExitInstance()
    {
    // TODO: Add your specialized code here and/or call the base class
    //skinmagic
    //-----------------------------------------
    if(m_blnSkinLoaded)
    ExitSkinMagicLib();
    //------------------------------------

    return CWinApp::ExitInstance();

  • 相关阅读:
    POJ2442 Sequence
    等式
    GYM101635E Ingredients
    单片机之PID算法
    信号完整性一
    C程序编程规范一
    FATFS文件系统的移植
    FreeRTOS移植到STM32上的移植过程
    codeblocks+SDCC开发51单片机
    java5种打印数组
  • 原文地址:https://www.cnblogs.com/soga--/p/3170628.html
Copyright © 2020-2023  润新知