?? treectrlex.cpp
字號:
// TreeCtrlEx.cpp : implementation file
//
#include "stdafx.h"
#include "TreeCtrlEx.h"
#include "TestLFPProtocol.h"
#include "LfpYk.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CTreeCtrlEx
CTreeCtrlEx::CTreeCtrlEx()
{
dev_addr = 0;
memset( &dev_type, '\0', sizeof( dev_type ) );
}
CTreeCtrlEx::~CTreeCtrlEx()
{
}
BEGIN_MESSAGE_MAP(CTreeCtrlEx, CTreeCtrl)
//{{AFX_MSG_MAP(CTreeCtrlEx)
ON_WM_RBUTTONDOWN()
ON_COMMAND(IDC_CTRL_YK_SEL, OnCtrlYkSel)
ON_COMMAND(IDC_CTRL_SETTING_VALUE, OnCtrlSettingValue)
ON_COMMAND(IDC_CTRL_POLL, OnCtrlPoll)
ON_COMMAND(IDC_CTRL_SET_TIME, OnCtrlSetTime)
ON_COMMAND(IDC_CTRL_RESET, OnCtrlReset)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CTreeCtrlEx message handlers
void CTreeCtrlEx::OnRButtonDown(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
CTreeCtrl::OnRButtonDown(nFlags, point);
CString str;
CMenu PopMenu;
CMenu *pMenu;
CPoint pt;
pt = point;
HTREEITEM htHit = HitTest( point );
SelectItem( htHit );
str = GetItemText( htHit );
if( str != "" ) {
CTestLFPProtocolApp* pApp = ( CTestLFPProtocolApp* )AfxGetApp();
CString temp;
if( str.Find( "-" ) >= 0 ) {
temp = str.Left( str.Find( "-" ) );
dev_addr = (BYTE)atoi( temp.GetBuffer( 0 ) );
temp = str.Mid( str.Find( "-" )+2 );
strcpy( dev_type, temp.GetBuffer( 0 ) );
strcat( dev_type, ".Def" );
}
PopMenu.LoadMenu( IDR_MENU_POPUP );
ClientToScreen ( &pt );
pMenu = PopMenu.GetSubMenu( 0 );
pMenu->TrackPopupMenu( TPM_LEFTALIGN | TPM_LEFTBUTTON, pt.x, pt.y, this );
}
}
void CTreeCtrlEx::OnCtrlYkSel()
{
// TODO: Add your command handler code here
CLfpYk dlg;
if( strcmp( dev_type, "" ) == 0 ) return;
dlg.yktype = YK_SELECT;
if( dlg.DoModal() == IDOK ) {
CTestLFPProtocolApp* pApp = ( CTestLFPProtocolApp* )AfxGetApp();
pApp->m_pMainView->m_bPoll = TRUE;
pApp->m_pMainView->nYkState = YK_SELECT;
pApp->m_pMainView->dev_addr = dev_addr;
pApp->m_pMainView->dev_ctrl.dev_ctrl_yknum = dlg.m_yknum;
pApp->m_pMainView->dev_ctrl.dev_ctrl_yktype = dlg.m_bykcmd;
pApp->m_pMainView->dev_ctrl.dev_ctrl_yk = TRUE;
}
}
void CTreeCtrlEx::OnCtrlSettingValue()
{
// TODO: Add your command handler code here
CTestLFPProtocolApp* pApp = ( CTestLFPProtocolApp* )AfxGetApp();
if( strcmp( dev_type, "" ) == 0 ) return;
pApp->m_pMainView->m_bPoll = TRUE;
pApp->m_pMainView->dev_addr = dev_addr;
pApp->m_pMainView->dev_ctrl.dev_call_settings = TRUE;
pApp->m_pMainFrame->CreateSettingValueView( dev_type );
}
void CTreeCtrlEx::OnCtrlPoll()
{
// TODO: Add your command handler code here
CTestLFPProtocolApp* pApp = ( CTestLFPProtocolApp* )AfxGetApp();
if( strcmp( dev_type, "" ) == 0 ) return;
pApp->m_pMainView->m_bPoll = TRUE;
pApp->m_pMainView->dev_addr = dev_addr;
pApp->m_pMainFrame->CreateListView( dev_type );
}
void CTreeCtrlEx::OnCtrlSetTime()
{
// TODO: Add your command handler code here
CTestLFPProtocolApp* pApp = ( CTestLFPProtocolApp* )AfxGetApp();
if( strcmp( dev_type, "" ) == 0 ) return;
pApp->m_pMainView->m_bPoll = TRUE;
pApp->m_pMainView->dev_ctrl.dev_set_time = TRUE;
}
void CTreeCtrlEx::OnCtrlReset()
{
// TODO: Add your command handler code here
CTestLFPProtocolApp* pApp = ( CTestLFPProtocolApp* )AfxGetApp();
if( strcmp( dev_type, "" ) == 0 ) return;
pApp->m_pMainView->m_bPoll = TRUE;
pApp->m_pMainView->dev_ctrl.dev_ctrl_reset = TRUE;
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -