📄 tview.cpp
字号:
// TView.cpp : 实现文件
//
#include "stdafx.h"
#include "ParseS57.h"
#include "TView.h"
#include ".\tview.h"
// CTView
IMPLEMENT_DYNCREATE(CTView, CTreeView)
CTView::CTView()
{
}
CTView::~CTView()
{
}
BEGIN_MESSAGE_MAP(CTView, CTreeView)
ON_NOTIFY_REFLECT(TVN_SELCHANGED, OnTvnSelchanged)
END_MESSAGE_MAP()
// CTView 诊断
#ifdef _DEBUG
void CTView::AssertValid() const
{
CTreeView::AssertValid();
}
void CTView::Dump(CDumpContext& dc) const
{
CTreeView::Dump(dc);
}
#endif //_DEBUG
// CTView 消息处理程序
void CTView::OnInitialUpdate()
{
CTreeView::OnInitialUpdate();
CTreeCtrl &treeCtrl=GetTreeCtrl();
DWORD dwStyle=::GetWindowLong(treeCtrl.m_hWnd,GWL_STYLE);
dwStyle|=TVS_HASBUTTONS|TVS_HASLINES|TVS_LINESATROOT;
::SetWindowLong(treeCtrl.m_hWnd,GWL_STYLE,dwStyle);
HTREEITEM hRoot,hCurPos;
TV_INSERTSTRUCT tInsert;
tInsert.hParent=TVI_ROOT;
tInsert.hInsertAfter=TVI_LAST;
tInsert.item.mask=TVIF_TEXT|TVIF_PARAM;
tInsert.item.pszText="分类";
tInsert.item.lParam=0;
hRoot=treeCtrl.InsertItem(&tInsert);
char *plant[4]={"编程","小说","科学","人文"};
char *cell[4][5]={
{"VC++","Delphi","BCB","",""},//主系统运行日志
{"武侠","侦探","言情","恐怖","悬疑"},
{"天文","地理","自然","",""},
{"社会科学","","","",""}
};
int i,j;
for(i=0;i<4;i++)
{
tInsert.hParent=hRoot;
tInsert.item.pszText=plant[i];
hCurPos=treeCtrl.InsertItem(&tInsert);
for(j=0;j<5;j++)
{
tInsert.hParent=hCurPos;
if(cell[i][j]!="")
{
tInsert.item.pszText=cell[i][j];
treeCtrl.InsertItem(&tInsert);}
}
//treeCtrl.Expand(hCurPos,TVE_EXPAND);
}
treeCtrl.Expand(hRoot,TVE_EXPAND);
// TODO: 在此添加专用代码和/或调用基类
}
BOOL CTView::IsSelected(const CObject* pDocItem) const
{
// TODO: 在此添加专用代码和/或调用基类
if (pDocItem->IsKindOf(RUNTIME_CLASS(CTreeView)))
{
TRACE(_T("selected TreeView Item is"));
}
return CTreeView::IsSelected(pDocItem);
}
void CTView::OnTvnSelchanged(NMHDR *pNMHDR, LRESULT *pResult)
{
LPNMTREEVIEW pNMTreeView = reinterpret_cast<LPNMTREEVIEW>(pNMHDR);
// TODO: 在此添加控件通知处理程序代码
/*TV_ITEM TreeCtrlItem;
HTREEITEM currentItem = GetTreeCtrl().GetSelectedItem();
TreeCtrlItem.hItem = currentItem;
this->GetTreeCtrl().GetItem(&TreeCtrlItem);*/
CString tempstring = this->GetTreeCtrl().GetItemText(this->GetTreeCtrl().GetSelectedItem());
TRACE(_T(tempstring +"\n"));
*pResult = 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -