zoukankan      html  css  js  c++  java
  • 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();

  • 相关阅读:
    docker 001 简介
    Golang 学习笔记 003 标识符、变量和常量
    Golang 学习笔记 002 第一个 go 程序
    Golang 学习笔记 001 环境部署
    nginx配置url中带问号的rewrite跳转
    北京市图书馆免费入口
    编译安装Python3
    Python—进程、线程、协程
    Python—I/O多路复用
    Python—Socket
  • 原文地址:https://www.cnblogs.com/soga--/p/3170628.html
Copyright © 2011-2022 走看看