atlsam.cpp
来自「专题讲座二:内容包括ActiveX控件介绍、利用MFC开发ActiveX控件、 」· C++ 代码 · 共 47 行
CPP
47 行
// ATLSam.cpp : Implementation of CATLSam
#include "stdafx.h"
#include "sam_2.h"
#include "ATLSam.h"
/////////////////////////////////////////////////////////////////////////////
// CATLSam
STDMETHODIMP CATLSam::InterfaceSupportsErrorInfo(REFIID riid)
{
static const IID* arr[] =
{
&IID_IATLSam,
};
for (int i=0;i<sizeof(arr)/sizeof(arr[0]);i++)
{
if (InlineIsEqualGUID(*arr[i],riid))
return S_OK;
}
return S_FALSE;
}
HRESULT CATLSam::OnDraw(ATL_DRAWINFO& di)
{
RECT& rc = *(RECT*)di.prcBounds;
Rectangle(di.hdcDraw, rc.left, rc.top, rc.right, rc.bottom);
DrawText(di.hdcDraw, _T(m_pszCaption), -1, &rc, DT_CENTER | DT_VCENTER | DT_SINGLELINE);
return S_OK;
}
STDMETHODIMP CATLSam::SetCaption(BSTR pszCaption)
{
USES_CONVERSION;
LPTSTR pTemp=W2A(pszCaption);
delete m_pszCaption;
m_pszCaption = new char[strlen(pTemp)+1];
strcpy(m_pszCaption,pTemp);
Invalidate();
return S_OK;
}
STDMETHODIMP CATLSam::GetCaptionLength(long *lLen)
{
*lLen=strlen(m_pszCaption);
return S_OK;
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?