📄 apbpropg.cpp
字号:
#include "stdafx.h"
#include "resource.h"
#include "apbpropg.h"
#include "appbar.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
#pragma warning ( disable : 4711 )
/////////////////////////////////////////////////////////////////////////////
// CAppBarPropPage property page
IMPLEMENT_DYNCREATE(CAppBarPropPage, CPropertyPage)
CAppBarPropPage::CAppBarPropPage () : CPropertyPage (CAppBarPropPage::IDD), m_pBar (NULL)
{
//{{AFX_DATA_INIT(CAppBarPropPage)
m_bDockable = FALSE;
m_bDocked = FALSE;
//}}AFX_DATA_INIT
}
CAppBarPropPage::~CAppBarPropPage ()
{
}
void CAppBarPropPage::
Init (CAppBar *pBar)
{
m_pBar = pBar;
m_bDockable = (m_pBar->m_dwFlags & ABS_DOCKABLE) == ABS_DOCKABLE;
m_bDocked = !m_pBar->IsFloating ();
}
void CAppBarPropPage::
UpdateDockable ()
{
m_ctlDocked.EnableWindow (m_bDockable);
}
void CAppBarPropPage::DoDataExchange (CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CAppBarPropPage)
DDX_Control(pDX, IDC_DOCKED, m_ctlDocked);
DDX_Check(pDX, IDC_DOCKABLE, m_bDockable);
DDX_Check(pDX, IDC_DOCKED, m_bDocked);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP (CAppBarPropPage, CPropertyPage)
//{{AFX_MSG_MAP(CAppBarPropPage)
ON_BN_CLICKED (IDC_DOCKABLE, OnDockable)
ON_BN_CLICKED (IDC_DOCKED, OnDocked)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAppBarPropPage message handlers
BOOL CAppBarPropPage::
OnSetActive ()
{
CPropertyPage::OnSetActive (); // inicializovat podle p-edka
UpdateData (FALSE); // data z dialogu do prom鴑n癱h
UpdateDockable ();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CAppBarPropPage::
OnOK ()
{
CPropertyPage::OnOK ();
if ((!m_bDocked || !m_bDockable) && !m_pBar->IsFloating ())
{
m_pBar->ToggleDocking ();
AfxGetMainFrame ()->RecalcLayout (FALSE);
}
if (m_bDockable)
{
if (!(m_pBar->m_dwFlags & ABS_DOCKABLE))
{
m_pBar->EnableDocking (CBRS_ALIGN_ANY);
m_pBar->m_dwFlags |= ABS_DOCKABLE;
}
if (m_bDocked && m_pBar->IsFloating ())
{
m_pBar->ToggleDocking ();
AfxGetMainFrame ()->RecalcLayout (FALSE);
}
}
else
{
if (m_pBar->m_dwFlags & ABS_DOCKABLE)
{
m_pBar->EnableDocking (0);
m_pBar->m_dwFlags &= ~ABS_DOCKABLE;
}
}
}
void CAppBarPropPage::OnDockable()
{
UpdateData (TRUE);
UpdateDockable ();
UpdateData (FALSE);
SetModified ();
}
void CAppBarPropPage::OnDocked()
{
SetModified ();
}
/////////////////////////////////////////////////////////////////////////////
#pragma warning ( default : 4711 )
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -