当前位置:网站首页>New wizard effect used by BCG
New wizard effect used by BCG
2022-07-04 19:42:00 【Spring buds and summer lotus_ seven hundred and twenty-eight mi】
The effect is as follows :
Go straight to source :
1、 Modify program entry :
BOOL CToolBarSampleApp::InitInstance()
{
InitCommonControls();
CBCGPWinApp::InitInstance();
if (!AfxOleInit())
{
AfxMessageBox(IDP_OLE_INIT_FAILED);
return FALSE;
}
AfxEnableControlContainer();
CBCGControlsPropSheet propSheet;
m_pMainWnd = &propSheet;
propSheet.DoModal();
return FALSE;
}
2、 Create a class BCGControlsPropSheet Used to load various pages :
(1)BCGControlsPropSheet.h
#pragma once
#include "Page1.h"
class CBCGControlsPropSheet : public CBCGPPropertySheet
{
DECLARE_DYNAMIC(CBCGControlsPropSheet)
public:
CBCGControlsPropSheet(CWnd* pParentWnd = NULL);
public:
CPage1 m_Page1;
HICON m_hIcon;
public:
public:
virtual BOOL OnInitDialog();
public:
virtual ~CBCGControlsPropSheet();
protected:
afx_msg HCURSOR OnQueryDragIcon();
afx_msg void OnSysCommand(UINT nID, LPARAM lParam);
DECLARE_MESSAGE_MAP()
};
(2)BCGControlsPropSheet.cpp
#include "stdafx.h"
#include "BCGControlsPropSheet.h"
#include "Resource.h"
IMPLEMENT_DYNAMIC(CBCGControlsPropSheet, CBCGPPropertySheet)
CBCGControlsPropSheet::CBCGControlsPropSheet(CWnd* pParentWnd)
:CBCGPPropertySheet (IDS_CAPTION, pParentWnd)
{
SetLook(CBCGPPropertySheet::PropSheetLook_Tabs, globalUtils.ScaleByDPI(100));// Here, modify the first parameter to display different effects
SetIconsList (IDB_ICONS32, 32, RGB(255, 0, 255), TRUE);
AddPage(&m_Page1);
EnableVisualManagerStyle(TRUE, TRUE);
EnableDragClientArea();
}
CBCGControlsPropSheet::~CBCGControlsPropSheet()
{
}
BEGIN_MESSAGE_MAP(CBCGControlsPropSheet, CBCGPPropertySheet)
ON_WM_QUERYDRAGICON()
ON_WM_SYSCOMMAND()
END_MESSAGE_MAP()
BOOL CBCGControlsPropSheet::OnInitDialog()
{
BOOL bResult = CBCGPPropertySheet::OnInitDialog();
return bResult;
}
HCURSOR CBCGControlsPropSheet::OnQueryDragIcon()
{
return (HCURSOR) m_hIcon;
}
void CBCGControlsPropSheet::OnSysCommand(UINT nID, LPARAM lParam)
{
if ((nID & 0xFFF0) == IDM_ABOUTBOX)
{
BCGPShowAboutDlg (AFX_IDS_APP_TITLE);
}
else
{
CBCGPPropertySheet::OnSysCommand(nID, lParam);
}
}
3、 Create each page page
(1)Page1.h
#pragma once
#include "Resource.h"
class CPage1 : public CBCGPPropertyPage
{
DECLARE_DYNCREATE(CPage1)
public:
CPage1();
~CPage1();
enum { IDD = IDD_TOOLBARSAMPLE_DIALOG };
public:
protected:
virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
protected:
virtual BOOL OnInitDialog();
DECLARE_MESSAGE_MAP()
CMenu m_menu;
BOOL m_bItem4Checked;
};
(2)Page1.cpp
#include "stdafx.h"
#include "Page1.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
IMPLEMENT_DYNCREATE(CPage1, CBCGPPropertyPage)
CPage1::CPage1() : CBCGPPropertyPage(CPage1::IDD)
{
}
CPage1::~CPage1()
{
}
void CPage1::DoDataExchange(CDataExchange* pDX)
{
CBCGPPropertyPage::DoDataExchange(pDX);
}
BEGIN_MESSAGE_MAP(CPage1, CBCGPPropertyPage)
END_MESSAGE_MAP()
BOOL CPage1::OnInitDialog()
{
CBCGPPropertyPage::OnInitDialog();
return TRUE;
}
边栏推荐
- 有关架构设计的个人思考(本文后续不断修改更新)
- 一文掌握数仓中auto analyze的使用
- Personal thoughts on Architecture Design (this article will be revised and updated continuously later)
- FPGA timing constraint sharing 01_ Brief description of the four steps
- Niuke Xiaobai month race 7 who is the divine Archer
- 需求开发思考
- How test engineers "attack the city" (Part 2)
- Jetpack compose tutorial
- Explore the contour drawing function drawcontours() of OpenCV in detail with practical examples
- 92. (cesium chapter) cesium building layering
猜你喜欢
Swagger suddenly went crazy
牛客小白月赛7 谁是神箭手
C语言-入门-基础-语法-流程控制(七)
Chrome开发工具:VMxxx文件是什么鬼
PointNeXt:通过改进的模型训练和缩放策略审视PointNet++
Opencv functions and methods related to binary threshold processing are summarized for comparison and use
How to use async Awati asynchronous task processing instead of backgroundworker?
BCG 使用之新建向导效果
Lenovo explains in detail the green smart city digital twin platform for the first time to solve the difficulties of urban dual carbon upgrading
【问题】druid报异常sql injection violation, part alway true condition not allow 解决方案
随机推荐
kotlin 基本使用
Several methods of online database migration
[QNX hypervisor 2.2 user manual]6.3.1 factory page and control page
kotlin 类和对象
92. (cesium chapter) cesium building layering
Explicit random number
HDU 1372 & POJ 2243 Knight moves (breadth first search)
牛客小白月赛7 F题
Oracle with as ora-00903: invalid table name multi report error
1011 World Cup betting (20 points) (pat a)
PolyFit软件介绍
Stream stream
How test engineers "attack the city" (Part I)
【毕业季】绿蚁新醅酒,红泥小火炉。晚来天欲雪,能饮一杯无?
c# .net mvc 使用百度Ueditor富文本框上传文件(图片,视频等)
What should we pay attention to when doing social media marketing? Here is the success secret of shopline sellers!
HMM隐马尔可夫模型最详细讲解与代码实现
Creation of JVM family objects
TCP两次挥手,你见过吗?那四次握手呢?
Chrome开发工具:VMxxx文件是什么鬼