帮忙看一下下面的代码,再做不出来老板要把我开除了,我真是够菜
nntt 2006-03-24 04:27:19 /--------该类是一个从CWnd派生出来的作为另一个窗体的tooltip----/
class CMsgWnd : public CWnd
{
// Construction
public:
CMsgWnd();
void SetPostion(int x, int y);
// Attributes
protected:
CBitmap m_Bitmap;
BITMAP bmBitmap;
BOOL m_bFlag;
LPCTSTR lpWndCls;
HWND m_hParentWnd;
// Operations
public:
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CMsgWnd)
//}}AFX_VIRTUAL
public:
virtual ~CMsgWnd();
BOOL CreateMsgWindow(CWnd* pParentWnd);
// Generated message map functions
protected:
//{{AFX_MSG(CMsgWnd)
afx_msg void OnPaint();
afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
CMsgWnd::CMsgWnd()
{
m_Bitmap.LoadBitmap(MAKEINTRESOURCE(IDB_BITMAP_BK));
m_Bitmap.GetBitmap(&bmBitmap);
lpWndCls = AfxRegisterWndClass(0);
}
CMsgWnd::~CMsgWnd()
{
}
BEGIN_MESSAGE_MAP(CMsgWnd, CWnd)
//{{AFX_MSG_MAP(CMsgWnd)
ON_WM_PAINT()
ON_WM_CREATE()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CMsgWnd message handlers
BOOL CMsgWnd::CreateMsgWindow(CWnd* pParentWnd)
{
BOOL ret = CreateEx(0, lpWndCls, "", WS_POPUP, 0, 0, bmBitmap.bmWidth, bmBitmap.bmHeight, pParentWnd->GetSafeHwnd(), NULL, NULL);
m_hParentWnd = pParentWnd->GetSafeHwnd();
if(ret)
{
SetOwner(pParentWnd);
}
return ret;
}
void CMsgWnd::OnPaint()
{
CPaintDC dc(this);
CDC dcMemory;
CRect rect;
GetClientRect(&rect);
dcMemory.CreateCompatibleDC(NULL);
dcMemory.SelectObject(&m_Bitmap);
dc.StretchBlt(0,
0,
rect.right-rect.left,
rect.bottom-rect.top,
&dcMemory,
0,
0,
bmBitmap.bmWidth,
bmBitmap.bmHeight,
SRCCOPY);
}
int CMsgWnd::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CWnd::OnCreate(lpCreateStruct) == -1)
return -1;
return 0;
}
void CMsgWnd::SetPostion(int x, int y)
{
SetWindowPos(&wndTop, x, y, 350, 230, SWP_NOSIZE | SWP_NOZORDER | SWP_NOACTIVATE);
}