📄 inbutton.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 + -