📄 treeviewproject.cpp
字号:
// TreeViewProject.cpp : implementation file
//
#include "stdafx.h"
#include "CVenus.h"
#include "TreeViewProject.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
CString CTreeViewProject::csProjectTree[] =
{
_T("工程"),
_T("(1)工艺初选"),
_T("(2)自喷井气水节点分析"),
_T("(3)气举排水采气节点分析"),
_T("(4)气举排水采气优化设计"),
_T("(5)抽油机排水采气优化设计"),
_T("(6)电潜泵排水采气节点分析"),
_T("(7)电潜泵排水采气优化设计"),
_T("(8)射流泵排水采气节点分析"),
_T("(9)射流泵排水采气优化设计"),
_T("(10)气井连续排液临界流量"),
_T("(11)多相流垂管流压力梯度"),
_T("(12)生产气井压力梯度"),
_T("(13)注气井压力梯度"),
};
/////////////////////////////////////////////////////////////////////////////
// CTreeViewProject
IMPLEMENT_DYNCREATE(CTreeViewProject, CTreeView)
CTreeViewProject::CTreeViewProject()
{
m_ItemCounter = sizeof(csProjectTree) / sizeof(csProjectTree[0]);
}
CTreeViewProject::~CTreeViewProject()
{
}
BEGIN_MESSAGE_MAP(CTreeViewProject, CTreeView)
//{{AFX_MSG_MAP(CTreeViewProject)
ON_WM_CREATE()
ON_NOTIFY_REFLECT(NM_RETURN, OnReturn)
ON_NOTIFY_REFLECT(NM_DBLCLK, OnDblclk)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTreeViewProject drawing
void CTreeViewProject::OnDraw(CDC* pDC)
{
CDocument* pDoc = GetDocument();
// TODO: add draw code here
}
/////////////////////////////////////////////////////////////////////////////
// CTreeViewProject diagnostics
#ifdef _DEBUG
void CTreeViewProject::AssertValid() const
{
CTreeView::AssertValid();
}
void CTreeViewProject::Dump(CDumpContext& dc) const
{
CTreeView::Dump(dc);
}
#endif //_DEBUG
/////////////////////////////////////////////////////////////////////////////
// CTreeViewProject message handlers
int CTreeViewProject::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
if (CTreeView::OnCreate(lpCreateStruct) == -1)
return -1;
UINT ID[15];
ID[0] = IDI_ICON1;
ID[1] = IDI_ICON28;
ID[2] = IDI_ICON29;
ID[3] = IDI_ICON30;
ID[4] = IDI_ICON31;
ID[5] = IDI_ICON32;
ID[6] = IDI_ICON33;
ID[7] = IDI_ICON34;
ID[8] = IDI_ICON35;
ID[9] = IDI_ICON36;
ID[10] = IDI_ICON37;
ID[11] = IDI_ICON38;
ID[12] = IDI_ICON39;
ID[13] = IDI_ICON40;
ID[14] = IDI_ICON41;
/* BOOL b = m_TreeCtrl.Create(WS_VISIBLE | WS_CHILD | //WS_BORDER |
TVS_HASLINES |TVS_HASBUTTONS|
WS_EX_DLGMODALFRAME, CRect(0, 0, 300, 500), this,
30000);
*/
m_TreeCtrl = &GetTreeCtrl();
m_ImageList.Create(16, 16, TRUE, 27, 0);
HICON hIcon;
for(int i = 0; i < m_ItemCounter; i++)
{
hIcon = ::LoadIcon (AfxGetResourceHandle(),
MAKEINTRESOURCE(ID[i]));
m_ImageList.Add(hIcon);
}
// m_TreeCtrl.SetImageList (&m_ImageList, TVSIL_NORMAL);
m_TreeCtrl->SetImageList (&m_ImageList, TVSIL_NORMAL);
// HTREEITEM htItem = m_TreeCtrl.InsertItem(csProjectTree[0]);
HTREEITEM htItem = m_TreeCtrl->InsertItem(csProjectTree[0]);
// m_TreeCtrl.SetItemState( htItem, TVIS_BOLD, TVIS_BOLD );
m_TreeCtrl->SetItemState( htItem, TVIS_BOLD, TVIS_BOLD );
for(i = 1; i < m_ItemCounter; i++)
{
// m_TreeCtrl.InsertItem (csProjectTree[i], i, i, htItem, TVI_LAST);
m_TreeCtrl->InsertItem (csProjectTree[i], i, i, htItem, TVI_LAST);
}
// m_TreeCtrl.Expand(htItem, TVE_EXPAND);
m_TreeCtrl->Expand(htItem, TVE_EXPAND);
return 0;
}
BOOL CTreeViewProject::PreCreateWindow(CREATESTRUCT& cs)
{
cs.style |= TVS_HASBUTTONS | TVS_HASLINES | TVS_LINESATROOT;
return CTreeView::PreCreateWindow(cs);
}
void CTreeViewProject::OnReturn(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
*pResult = 0;
}
void CTreeViewProject::OnDblclk(NMHDR* pNMHDR, LRESULT* pResult)
{
HTREEITEM hTreeItem1 = m_TreeCtrl->GetSelectedItem();
CString str = m_TreeCtrl->GetItemText(hTreeItem1);
if( ((CCVenusApp*)AfxGetApp())->m_pGraphDlg == NULL ) return;
for(int i = 1; i < m_ItemCounter; i++)
{
if(str.Compare(csProjectTree[i]) == 0)
{
((CCVenusApp*)AfxGetApp())->OnProject(IDM_PROJECT_1 + i - 1);
break;
}
}
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -