⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 inbutton.cpp

📁 C++编程实践与技巧一书各章节的源码
💻 CPP
字号:
#include "stdafx.h" 
#include "InButton.h" 

#ifdef _DEBUG 
#define new DEBUG_NEW 
#undef THIS_FILE 
static char THIS_FILE[] = __FILE__; 
#endif 

///////////////////////////////////////////////////////////////////////////// 

CDouButton::CDouButton() 
{ 
 m_bInsideButton = FALSE; 
} 

CDouButton::~CDouButton() 
{ 
} 


BEGIN_MESSAGE_MAP(CDouButton, CButton) 
 //{{AFX_MSG_MAP(CDouButton) 
 // NOTE - the ClassWizard will add and remove mapping macros here. 
 //}}AFX_MSG_MAP 
END_MESSAGE_MAP() 

///////////////////////////////////////////////////////////////////////////// 

// CDouButton message handlers 

void CDouButton::PreSubclassWindow() 
{ 
 CString caption; 
 GetWindowText(caption); 
 SetWindowText(_T("")); 
 CRect client; 
 GetClientRect(client); 
 int dx = (int)((double)client.Width() * 0.8), dy = 
(int)((double)client.Height() * 0.7); 
 m_wndButtonInside.Create(caption, WS_CHILD | WS_VISIBLE | GetStyle(), 
CRect(CPoint((client.Width() - dx) / 2, (client.Height() - dy) / 
2),CSize( dx, dy)), this, 0); 
 m_wndButtonInside.SetWindowPos(&CWnd::wndNoTopMost,0,0,0,0, SWP_NOMOVE 
| SWP_NOSIZE); 
 ModifyStyle(0,WS_CLIPSIBLINGS | WS_CLIPCHILDREN); 
 m_wndButtonInside.SetFont(GetFont()); 
 CButton::PreSubclassWindow(); 
} 


BOOL CDouButton::OnCommand(WPARAM wParam, LPARAM lParam) 
{ 
 m_bInsideButton = TRUE; 
 GetParent()->SendMessage(WM_COMMAND, 
MAKEWPARAM(GetDlgCtrlID(),HIWORD(wParam)), lParam); 
 m_bInsideButton = FALSE; 

 return CButton::OnCommand(wParam, lParam); 
} 

HBITMAP CDouButton::SetBitmap( HBITMAP hBitmap ) 
{ 
 ASSERT(m_wndButtonInside.GetSafeHwnd()); 
 return m_wndButtonInside.SetBitmap(hBitmap); 
} 

HICON CDouButton::SetIcon( HICON hIcon ) 
{ 
 ASSERT(m_wndButtonInside.GetSafeHwnd()); 
 return m_wndButtonInside.SetIcon(hIcon); 
} 

HCURSOR CDouButton::SetCursor( HCURSOR hCursor ) 
{ 
 ASSERT(m_wndButtonInside.GetSafeHwnd()); 
 return m_wndButtonInside.SetCursor(hCursor); 
} 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -