本文整理汇总了C++中CButton::UnsubclassWindow方法的典型用法代码示例。如果您正苦于以下问题:C++ CButton::UnsubclassWindow方法的具体用法?C++ CButton::UnsubclassWindow怎么用?C++ CButton::UnsubclassWindow使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CButton
的用法示例。
在下文中一共展示了CButton::UnsubclassWindow方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: while
CBaseDialog::~CBaseDialog()
{
POSITION pos= m_wndList.GetHeadPosition();
CButton* pBtn = NULL;
while (pos)
{
pBtn = (CButton*)m_wndList.GetNext(pos);
if (pBtn->GetSafeHwnd() != NULL)
{
pBtn->UnsubclassWindow();
}
delete pBtn;
}
m_wndList.RemoveAll();
}
示例2: CreateBtns
void CGeneralMsgBox::CreateBtns()
{
// The minimum button's dimension
m_dimBtn = CSize(FromDlgX(m_aMetrics[CX_MIN_BTN]), 0);
// DC and Font for use in some dimension calculations
CClientDC dc(this);
CFont *pWndFont = GetFont();
CFont *poldFont = dc.SelectObject(pWndFont);
CRect rcDummy; // dimesion doesn't matter here
INT_PTR cBtns = m_aBtns.GetSize();
for (int i = 0; i < cBtns; ++i) {
BTNDATA &btndata = m_aBtns[i];
// Finding the minimum dimension needed to properly show any button
CSize dimBtn = dc.GetTextExtent(btndata.strBtn);
m_dimBtn.cx = max(m_dimBtn.cx, dimBtn.cx);
m_dimBtn.cy = max(m_dimBtn.cy, dimBtn.cy);
// Creating the button with MFC's CButton help.
CButton btnCtrl;
btnCtrl.Create(btndata.strBtn,
WS_CHILD|WS_VISIBLE|WS_TABSTOP,
rcDummy, this, btndata.uiIDC);
btnCtrl.SetFont(pWndFont);
btnCtrl.UnsubclassWindow();
}
dc.SelectObject(poldFont);
// Add the button margins
m_dimBtn.cx += 2 * FromDlgX(m_aMetrics[CX_BTN_BORDER]);
m_dimBtn.cy += 2 * FromDlgY(m_aMetrics[CY_BTN_BORDER]);
}