?? lefttreeview.h
字號:
#if !defined(AFX_LEFTTREEVIEW_H__51A6DD65_F2E8_4315_B124_0E2763FFA324__INCLUDED_)
#define AFX_LEFTTREEVIEW_H__51A6DD65_F2E8_4315_B124_0E2763FFA324__INCLUDED_
#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000
// LeftTreeView.h : header file
//
#include <afxcview.h>
#include <afxtempl.h>
#include "MainFrm.h"
#include "SkillBookView.h"
#include "ADO.h"
typedef struct _TREEINFO
{
int nType;
int nTag;
int nDeleted;
}TREEINFO;
/////////////////////////////////////////////////////////////////////////////
// CLeftTreeView view
class CLeftTreeView : public CTreeView
{
private:
BOOL CloseDatabaseConnection();
BOOL InitDatabaseConnection();
void AddChildNode(const int nType=0);
void InitPara(void);
void AddNode(const int nType=0);
void ShowPopupMenu(CPoint& point);
POSITION GetFreeItemTag(int &nTag);
int GetItemTypeByTag(const int nTag);
HTREEITEM GetNextItem(HTREEITEM hItem);
int GetIndentLevel(HTREEITEM hItem);
void SaveTreeToDB(void);
void LoadTreeFromDB(void);
void SetDeletedItemTagFlag(void);
void AddRootNode(void);
BOOL SaveArticleByTreeItemTag(const int nTag);
BOOL ShowArticleByTreeItemTag(const int nTag);
HTREEITEM CopyBranch(HTREEITEM htiBranch,HTREEITEM htiNewParent,HTREEITEM htiAfter);
HTREEITEM CopyItem(HTREEITEM hItem,HTREEITEM htiNewParent,HTREEITEM htiAfter);
private:
CADO m_ADO;
CList <TREEINFO, TREEINFO> m_TreeInfoList;
CList <int, int> m_SelectedItemTagList;
CTreeCtrl *m_pTreeSkill;
CImageList m_imglstTree;
int m_nCurrentSelTag;
BOOL m_bEnableAddItem;
UINT m_TimerTicks; //處理滾動的定時器所經過的時間
UINT m_nScrollTimerID; //處理滾動的定時器
CPoint m_HoverPoint; //鼠標位置
UINT m_nHoverTimerID; //鼠標敏感定時器
DWORD m_dwDragStart; //按下鼠標左鍵那一刻的時間
BOOL m_bDragging; //標識是否正在拖動過程中
CImageList* m_pDragImage; //拖動時顯示的圖象列表
HTREEITEM m_hItemDragS; //被拖動的標簽
HTREEITEM m_hItemDragD; //接受拖動的標簽
BOOL m_bCanEditLabel;
CBitmap m_bitmap;
protected:
CLeftTreeView(); // protected constructor used by dynamic creation
DECLARE_DYNCREATE(CLeftTreeView)
// Attributes
public:
// Operations
public:
void SaveCurrentArticle(void);
// Overrides
// ClassWizard generated virtual function overrides
//{{AFX_VIRTUAL(CLeftTreeView)
public:
virtual void OnInitialUpdate();
protected:
virtual void OnDraw(CDC* pDC); // overridden to draw this view
virtual LRESULT WindowProc(UINT message, WPARAM wParam, LPARAM lParam);
//}}AFX_VIRTUAL
// Implementation
protected:
virtual ~CLeftTreeView();
#ifdef _DEBUG
virtual void AssertValid() const;
virtual void Dump(CDumpContext& dc) const;
#endif
// Generated message map functions
protected:
//{{AFX_MSG(CLeftTreeView)
afx_msg void OnDestroy();
afx_msg void OnEndlabeledit(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnSelchanged(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnContextMenu(CWnd* pWnd, CPoint point);
afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
afx_msg void OnRButtonDown(UINT nFlags, CPoint point);
afx_msg void OnKeydown(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnMenuDelete();
afx_msg void OnMenuAddnode();
afx_msg void OnMenuAddchildnode();
afx_msg void OnMenuAddarticle();
afx_msg void OnMenuAddchildarticle();
afx_msg void OnUpdateMenuAddchildarticle(CCmdUI* pCmdUI);
afx_msg void OnUpdateMenuAddchildnode(CCmdUI* pCmdUI);
afx_msg void OnMenuAddrootnode();
afx_msg void OnBegindrag(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnMouseMove(UINT nFlags, CPoint point);
afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
afx_msg void OnTimer(UINT nIDEvent);
afx_msg void OnBeginlabeledit(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnMenuRename();
afx_msg void OnPaint();
afx_msg BOOL OnEraseBkgnd(CDC* pDC);
afx_msg void OnItemexpanded(NMHDR* pNMHDR, LRESULT* pResult);
afx_msg void OnItemexpanding(NMHDR* pNMHDR, LRESULT* pResult);
//}}AFX_MSG
DECLARE_MESSAGE_MAP()
};
/////////////////////////////////////////////////////////////////////////////
//{{AFX_INSERT_LOCATION}}
// Microsoft Visual C++ will insert additional declarations immediately before the previous line.
#endif // !defined(AFX_LEFTTREEVIEW_H__51A6DD65_F2E8_4315_B124_0E2763FFA324__INCLUDED_)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -