/////////////////////////////////////////////////if definedAFX_TREEDLG_H__D82DB384_F574_44A7_96DA_6EC9068E22B1__INCLUDED_defineAFX_TREEDLG_H__D82DB384_F574_44A7_96DA_6EC9068E22B1__INCLUDED_if _MSC_VER gt 1000pragma onceendif // _MSC_VER gt 1000/////////////////////////////////////////// CTreeDlg dialoginclude quotMyTreeCtrl.hquotclass CTreeDlg : public CDialog // Construction public: CTreeDlgCWnd pParent NULL // standard constructor // Dialog Data //AFX_DATACTreeDlg enum IDD IDD_TREE_DIALOG CMyTreeCtrl m_CtrlTree //AFX_DATA // ClassWizard generated virtual function overrides //AFX_VIRTUALCTreeDlg protected: virtual void DoDataExchangeCDataExchange pDX // DDX/DDVsupport //AFX_VIRTUAL // Implementation protected: HICON m_hIcon // Generated message map functions //AFX_MSGCTreeDlg virtual BOOL OnInitDialog afx_msg void OnSysCommandUINT nID LPARAM lParam afx_msg void OnPaint afx_msg HCURSOR OnQueryDragIcon //AFX_MSG DECLARE_MESSAGE_MAPendif////////////////////////////////// MyTreeCtrl.cpp : implementation fileinclude quotStdAfx.hquotinclude quotTree.hquotinclude quotMyTreeCtrl.hquotifdef _DEBUGdefine new DEBUG_NEWundef THIS_FILEstatic char THIS_FILE __FILE__endif////////////////////////////// CMyTreeCtrlCMyTreeCtrl::CMyTreeCtrlCMyTreeCtrl::CMyTreeCtrlBEGIN_MESSAGE_MAPCMyTreeCtrl CTreeCtrl //AFX_MSG_MAPCMyTreeCtrl ON_WM_PAINT ON_WM_ERASEBKGND ON_NOTIFY_REFLECTTVN_ITEMEXPANDED OnItemexpanded ON_NOTIFY_REFLECTTVN_ITEMEXPANDING OnItemexpanding //AFX_MSG_MAPEND_MESSAGE_MAP/////////////////////////////////////////////////////////////////////////////// CMyTreeCtrl message handlersBOOL CMyTreeCtrl::SetBKImageLPCTSTR LpszResource // if this is not the first call then delete gdi objects if m_bitmap.m_hObject NULL m_bitmap.DeleteObject HBITMAP hbmp HBITMAP::LoadImageAfxGetInstanceHandleLpszResource IMAGE_BITMAP 0 0 LR_CREATEDIBSECTIONLR_LOADFROMFILE if hbmp NULL return FALSE m_bitmap.Attach hbmp return TRUELRESULT CMyTreeCtrl::WindowProcUINT message WPARAM wParam LPARAMlParam // TODO: Add your specialized code here and/or call the base class return CTreeCtrl::WindowProcmessage wParam lParamvoid CMyTreeCtrl::OnPaint CPaintDC dcthis // device context for painting CRect rcclient GetClientRectamprcclient // create a compatible memory dc CDC memdc memdc.CreateCompatibleDCampdc CBitmap bitmap bitmap.CreateCompatibleBitmapampdc rcclient.Widthrcclient.Height memdc.SelectObject ampbitmap CWnd::DefWindowProcWM_PAINT WPARAMmemdc.m_hDC 0 CDC maskdc maskdc.CreateCompatibleDCampdc CBitmap maskbitmap maskbitmap.CreateBitmaprcclient.Width rcclient.Height 1 1NULL maskdc.SelectObject ampmaskbitmap maskdc.BitBlt 0 0 rcclient.Width rcclient.Height ampmemdc rcclient.left rcclient.top SRCCOPY CBrush brush brush.CreatePatternBrushampm_bitmap dc.FillRectrcclient ampbrush memdc.SetBkColorRGB000 memdc.SetTextColorRGB255255255 memdc.BitBltrcclient.left rcclient.top rcclient.Widthrcclient.Height ampmaskdc rcclient.left rcclient.top SRCAND dc.SetBkColorRGB255255255 dc.SetTextColorRGB000 dc.BitBltrcclient.left rcclient.top rcclient.Widthrcclient.Height ampmaskdc rcclient.left rcclient.top SRCAND dc.BitBltrcclient.left rcclient.top rcclient.Widthrcclient.Height ampmemdc rcclient.left rcclient.topSRCPAINT brush.DeleteObjectBOOL CMyTreeCtrl::OnEraseBkgndCDC pDC // TODO: Add your message handler code here and/or call default return TRUEvoid CMyTreeCtrl::OnItemexpandedNMHDR pNMHDR LRESULT pResult NM_TREEVIEW pNMTreeView NM_TREEVIEWpNMHDR // TODO: Add your control notification h.
上一篇:
【精品论文】VC++科学计算器设计源代码及流程图
下一篇:
ASP小区停车管理系统(Access)(含录像)