📄 dxmangerview.cpp
字号:
// DxMangerView.cpp : implementation of the CDxMangerView class
//
#include "stdafx.h"
#include "DxManger.h"
#include "relay.h"
#include "DxMangerDoc.h"
#include "DxMangerView.h"
#include "setbiaomangerdlg.h"
#include "setcommdlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDxMangerView
IMPLEMENT_DYNCREATE(CDxMangerView, CFormView)
BEGIN_MESSAGE_MAP(CDxMangerView, CFormView)
//{{AFX_MSG_MAP(CDxMangerView)
ON_BN_CLICKED(IDC_BTN_READ_GONGLST, OnBtnReadGonglst)
ON_BN_CLICKED(IDC_CHECK_CHAOBIAO, OnCheckChaobiao)
ON_BN_CLICKED(IDC_BTN_READ_MONTHSRECORD, OnBtnReadMonthsrecord)
ON_BN_CLICKED(_READ_HOURSRECORD, OnReadHoursrecord)
ON_BN_CLICKED(IDC_BTN_SELECT_ALLPARAM, OnBtnSelectAllparam)
ON_BN_CLICKED(IDC_BTN_CANCLE_ALLPARAM, OnBtnCancleAllparam)
ON_BN_CLICKED(IDC_BTN_READALL, OnBtnReadall)
ON_BN_CLICKED(IDC_BTN_CLEAR_ALL, OnBtnClearAll)
ON_EN_CHANGE(IDC_EDT_BIAONUMBER, OnChangeEdtBiaonumber)
ON_BN_CLICKED(IDC_BTN_READPARAM, OnBtnReadparam)
ON_COMMAND(ID_MENU_SETBIAO, OnMenuSetbiao)
ON_COMMAND(ID_BTNBAR_SETDB, OnBtnbarSetdb)
ON_COMMAND(ID_MENU_SELECT_COM, OnMenuSelectCom)
ON_WM_TIMER()
ON_COMMAND(M_SETRELAY, OnSetrelay)
ON_BN_CLICKED(IDC_SELECTALL, OnSelectall)
ON_BN_CLICKED(IDC_CANCELALL, OnCancelall)
ON_BN_CLICKED(IDC_CLEAN, OnClean)
ON_BN_CLICKED(IDC_CHK_TWOFOUR, OnChkTwofour)
ON_BN_CLICKED(IDC_CHK_FOUREIGHY, OnChkFoureighy)
ON_BN_CLICKED(IDC_COLLECT, OnCollect)
ON_BN_CLICKED(IDC_CHK_ENERGY, OnChkEnergy)
ON_BN_CLICKED(IDC_SELEALL, OnSeleall)
ON_BN_CLICKED(IDC_DISALL, OnDisall)
ON_BN_CLICKED(IDC_SETMETER, OnSetmeter)
ON_BN_CLICKED(IDC_SEND, OnSend)
ON_WM_CTLCOLOR()
ON_BN_CLICKED(ID_APP_EXIT1, OnAppExit1)
ON_BN_CLICKED(IDC_BUTTON2, OnButton2)
//}}AFX_MSG_MAP
// Standard printing commands
ON_COMMAND(ID_FILE_PRINT, CFormView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_DIRECT, CFormView::OnFilePrint)
ON_COMMAND(ID_FILE_PRINT_PREVIEW, CFormView::OnFilePrintPreview)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDxMangerView construction/destruction
CDxMangerView::CDxMangerView()
: CFormView(CDxMangerView::IDD)
{
com=1;
m_buad="2400";
m_status_count=0;
//{{AFX_DATA_INIT(CDxMangerView)
/* m_chk_address = FALSE;
m_chk_biaoid = FALSE;
m_chk_block1 = FALSE;
m_chk_block2 = FALSE;
m_chk_broa = FALSE;
m_chk_clear = FALSE;
m_chk_const = FALSE;
m_chk_cur = FALSE;
m_chk_date = FALSE;
m_chk_dateset = FALSE;
m_chk_energy = FALSE;
m_chk_four = FALSE;
m_chk_eight = FALSE;
m_chk_hezha = FALSE;
m_chk_kuai = FALSE;
m_chk_lazha = FALSE;
m_chk_password = FALSE;
m_chk_protol = FALSE;
m_chk_relay = FALSE;
m_chk_sevenday = FALSE;
m_chk_time = FALSE;
m_chk_timeset = FALSE;
m_chk_twofour = FALSE;
m_chk_zero = FALSE;
m_datetimepicker1 = 0;
m_datetimepicker2 = 0;
m_targetaddress = _T("");
m_ongoing = _T("");
m_edit_passset = _T("");
m_edit_time = _T("");
m_edit_relay = _T("");
m_edit_recbuf = _T("");
m_edit_protol = _T("");
m_edit_pass = _T("");
m_edit_di1 = _T("");
m_edit_di0 = _T("");
m_edit_date = _T("");
m_edit_const = _T("");
m_edit_biaoidset = _T("");
m_edit_biaoidh = _T("");
m_edit_biaoid = _T("");
m_edit_address = _T("");*/
m_targetaddress = _T("000000");
m_ongoing = _T("");
m_chk_energy = FALSE;
m_chk_sevenday = FALSE;
m_chk_address = FALSE;
m_chk_const = FALSE;
m_chk_date = FALSE;
m_chk_protol = FALSE;
m_chk_relay = FALSE;
m_chk_time = FALSE;
m_edit_address = _T("");
m_edit_const = _T("");
m_edit_date = _T("");
m_edit_relay = _T("");
m_edit_protol = _T("");
m_edit_time = _T("");
m_chk_biaoid = FALSE;
m_chk_broa = FALSE;
m_chk_clear = FALSE;
m_chk_cur = FALSE;
m_chk_dateset = FALSE;
m_chk_hezha = FALSE;
m_chk_lazha = FALSE;
m_chk_password = FALSE;
m_chk_timeset = FALSE;
m_edit_biaoid = _T("000000");
m_edit_pass = _T("12345600");
m_datetimepicker1 = 0;
m_datetimepicker2 = 0;
m_edit_biaoidset = _T("000000");
m_edit_passset = _T("12345600");
m_chk_zero = FALSE;
m_chk_four = FALSE;
m_chk_kuai = FALSE;
m_chk_twofour = FALSE;
m_chk_eight = FALSE;
m_chk_block1 = FALSE;
m_chk_block2 = FALSE;
m_edit_di0 = _T("10");
m_edit_di1 = _T("90");
m_edit_recbuf = _T("");
m_edit_biaoidh = _T("080312");
//}}AFX_DATA_INIT
// TODO: add construction code here
LoadIni();
}
CDxMangerView::~CDxMangerView()
{
}
void CDxMangerView::DoDataExchange(CDataExchange* pDX)
{
CFormView::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDxMangerView)
DDX_Control(pDX, IDC_PROGRESS_STATUS, m_prograss_status);
DDX_Control(pDX, IDC_LIST_HOUR, m_listhour);
DDX_Control(pDX, IDC_LISTDAY, m_listday);
DDX_Control(pDX, IDC_LISTMONTH, m_listmonth);
DDX_Control(pDX, IDC_COLLECT_STATUS, m_lst_readstatus);
DDX_Control(pDX, IDC_MSCOMM1, m_comm);
DDX_Check(pDX, IDC_CHK_ADDRESS, m_chk_address);
DDX_Check(pDX, IDC_CHK_BIAOID, m_chk_biaoid);
DDX_Check(pDX, IDC_CHK_BLOCK1, m_chk_block1);
DDX_Check(pDX, IDC_CHK_BLOCK2, m_chk_block2);
DDX_Check(pDX, IDC_CHK_BROA, m_chk_broa);
DDX_Check(pDX, IDC_CHK_CLEAR, m_chk_clear);
DDX_Check(pDX, IDC_CHK_CONST, m_chk_const);
DDX_Check(pDX, IDC_CHK_CUR, m_chk_cur);
DDX_Check(pDX, IDC_CHK_DATE, m_chk_date);
DDX_Check(pDX, IDC_CHK_DATESET, m_chk_dateset);
DDX_Check(pDX, IDC_CHK_ENERGY, m_chk_energy);
DDX_Check(pDX, IDC_CHK_FOUR, m_chk_four);
DDX_Check(pDX, IDC_CHK_FOUREIGHY, m_chk_eight);
DDX_Check(pDX, IDC_CHK_HEZHA, m_chk_hezha);
DDX_Check(pDX, IDC_CHK_KUAI, m_chk_kuai);
DDX_Check(pDX, IDC_CHK_LAZHA, m_chk_lazha);
DDX_Check(pDX, IDC_CHK_PASSWORD, m_chk_password);
DDX_Check(pDX, IDC_CHK_PROTOL, m_chk_protol);
DDX_Check(pDX, IDC_CHK_RELAY, m_chk_relay);
DDX_Check(pDX, IDC_CHK_SEVENDAY, m_chk_sevenday);
DDX_Check(pDX, IDC_CHK_TIME, m_chk_time);
DDX_Check(pDX, IDC_CHK_TIMESET, m_chk_timeset);
DDX_Check(pDX, IDC_CHK_TWOFOUR, m_chk_twofour);
DDX_Check(pDX, IDC_CHK_ZERO, m_chk_zero);
DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_datetimepicker1);
DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER3, m_datetimepicker2);
DDX_Text(pDX, IDC_TARGETADDRESS, m_targetaddress);
DDX_Text(pDX, IDC_ONGOING, m_ongoing);
DDX_Text(pDX, IDC_EDITPASSSET, m_edit_passset);
DDX_Text(pDX, IDC_EDIT_TIME, m_edit_time);
DDX_Text(pDX, IDC_EDIT_RELAY, m_edit_relay);
DDX_Text(pDX, IDC_EDIT_RECBUF, m_edit_recbuf);
DDX_Text(pDX, IDC_EDIT_PROTOL, m_edit_protol);
DDX_Text(pDX, IDC_EDIT_PASS, m_edit_pass);
DDV_MaxChars(pDX, m_edit_pass, 8);
DDX_Text(pDX, IDC_EDIT_DI1, m_edit_di1);
DDV_MaxChars(pDX, m_edit_di1, 2);
DDX_Text(pDX, IDC_EDIT_DI0, m_edit_di0);
DDV_MaxChars(pDX, m_edit_di0, 2);
DDX_Text(pDX, IDC_EDIT_DATE, m_edit_date);
DDX_Text(pDX, IDC_EDIT_CONST, m_edit_const);
DDX_Text(pDX, IDC_EDIT_BIAOIDSET, m_edit_biaoidset);
DDX_Text(pDX, IDC_EDIT_BIAOIDH, m_edit_biaoidh);
DDV_MaxChars(pDX, m_edit_biaoidh, 6);
DDX_Text(pDX, IDC_EDIT_BIAOID, m_edit_biaoid);
DDV_MaxChars(pDX, m_edit_biaoid, 6);
DDX_Text(pDX, IDC_EDIT_ADDRESS, m_edit_address);
DDV_MaxChars(pDX, m_edit_address, 6);
//}}AFX_DATA_MAP
}
BOOL CDxMangerView::PreCreateWindow(CREATESTRUCT& cs)
{
// TODO: Modify the Window class or styles here by modifying
// the CREATESTRUCT cs
return CFormView::PreCreateWindow(cs);
}
void CDxMangerView::OnInitialUpdate()
{
CFormView::OnInitialUpdate();
GetParentFrame()->RecalcLayout();
ResizeParentToFit();
SetTimer(2,1000,NULL);//////////////////timer2
SetTimer(3,10000,NULL);
CString HeaderString;
LV_COLUMN LVColumn;
//CString wccc,guohan;
///////////////////////////////////////////////////////////
relayfalg=0;
m_status_count=0;
relaynumber=1;
m_chk_cur=1;
m_lst_readstatus.SetBkColor(RGB(255,128,0));
m_lst_readstatus.SetTextBkColor(RGB(255,128,0));
m_lst_readstatus.SetTextColor(RGB(0,0,255));
m_lst_readstatus.SetExtendedStyle( LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT |
LVS_EX_HEADERDRAGDROP );
TCHAR szBuf[20];
LV_COLUMN lvc;
int i;
for ( i = 0; i < 2; i++ )
{
switch(i)
{
case 0:
wsprintf(szBuf, _T("选项"));
lvc.cx = 123;
break;
case 1:
wsprintf(szBuf, _T("状态") );
lvc.cx = 70;
break;
}
lvc.mask = LVCF_FMT | LVCF_SUBITEM | LVCF_TEXT | LVCF_WIDTH;
lvc.fmt = LVCFMT_LEFT;
lvc.pszText =szBuf;
lvc.iSubItem = i;
//lvc.cx = 48+14*i;
m_lst_readstatus.InsertColumn( i, &lvc );
//m_list_two.InsertColumn( i, &lvc );
}
/* guohan="11";
m_lst_readstatus.InsertItem(0, guohan);
guohan="22";
m_lst_readstatus.InsertItem(1, guohan);
guohan="33";
m_lst_readstatus.InsertItem(2, guohan);
guohan="44";
m_lst_readstatus.InsertItem(3, guohan);
guohan="55";
m_lst_readstatus.InsertItem(4, guohan);
guohan="66";
m_lst_readstatus.InsertItem(5, guohan);
guohan="77";
m_lst_readstatus.InsertItem(6, guohan);
guohan="88";
m_lst_readstatus.InsertItem(7, guohan);
guohan="99";
m_lst_readstatus.InsertItem(8, guohan);
guohan="00";
m_lst_readstatus.InsertItem(9, guohan);
guohan="ds";
m_lst_readstatus.InsertItem(10, guohan);
guohan="ee";
m_lst_readstatus.InsertItem(11, guohan); */
char *columnheader[2]={ "选项",
"电能"
};
///////////////////////////////////////////////////////////////////
m_listmonth.SetBkColor(RGB(0,0,255));
m_listmonth.SetTextBkColor(RGB(0,0,255));
m_listmonth.SetTextColor(RGB(255,255,0));
LVColumn.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
m_listmonth.SetExtendedStyle(m_listmonth.GetExtendedStyle()|LVS_REPORT
|LVS_EX_CHECKBOXES);
for (int Column = 0; (Column < 2); Column++)//列表表头
{
// fill header data
HeaderString.Format ("%s",columnheader[Column]);;
LVColumn.iSubItem = Column;
LVColumn.pszText = (LPTSTR) (LPCTSTR) HeaderString;
LVColumn.cx = 119;
LVColumn.fmt = LVCFMT_CENTER;
m_listmonth.InsertColumn (Column, &LVColumn);
}
m_listmonth.InsertItem(0, "当前月");
m_listmonth.InsertItem(1, "上一月");
m_listmonth.InsertItem(2, "上二月");
m_listmonth.InsertItem(3, "上三月");
char *columnheader1[3]={ "时间",
"电能",
"日期"
};
///////////////////////////////////////////////////////////
char *columnheader2[10]={ "3H",
"电能",
"小时",
"日期",
"电能",
"小时",
"日期",
"电能",
"小时",
"日期"
};
m_listhour.SetBkColor(RGB(0,0,255));
m_listhour.SetTextBkColor(RGB(0,0,255));
m_listhour.SetTextColor(RGB(255,255,0));
LVColumn.mask = LVCF_FMT | LVCF_WIDTH | LVCF_TEXT | LVCF_SUBITEM;
m_listhour.SetExtendedStyle(m_listmonth.GetExtendedStyle()|LVS_REPORT
|LVS_EX_CHECKBOXES);
for (Column = 0; (Column < 10); Column++)//列表表头
{
// fill header data
HeaderString.Format ("%s",columnheader2[Column]);;
LVColumn.iSubItem = Column;
LVColumn.pszText = (LPTSTR) (LPCTSTR) HeaderString;
if((Column%3)==1)
LVColumn.cx = 89;
else
LVColumn.cx = 40;
LVColumn.fmt = LVCFMT_CENTER;
m_listhour.InsertColumn (Column, &LVColumn);
}
m_listhour.InsertItem(0, "01");
m_listhour.InsertItem(1, "04");
m_listhour.InsertItem(2, "07");
m_listhour.InsertItem(3, "10");
m_listhour.InsertItem(4, "13");
m_listhour.InsertItem(5, "16");
m_listhour.InsertItem(6, "19");
m_listhour.InsertItem(7, "22");
m_listhour.InsertItem(8, "25");
m_listhour.InsertItem(9, "28");
m_listhour.InsertItem(10, "31");
m_listhour.InsertItem(11, "34");
m_listhour.InsertItem(12, "37");
m_listhour.InsertItem(13, "40");
m_listhour.InsertItem(14, "43");
m_listhour.InsertItem(15, "46");
////////////////////////////////////////////////////////////
m_listday.SetBkColor(RGB(0,0,255));
m_listday.SetTextBkColor(RGB(0,0,255));
m_listday.SetTextColor(RGB(255,255,0));
m_listday.SetExtendedStyle(LVS_REPORT&~LVS_EX_CHECKBOXES);
for ( Column = 0; (Column < 3); Column++)//列表表头
{
// fill header data
HeaderString.Format ("%s",columnheader1[Column]);;
LVColumn.iSubItem = Column;
LVColumn.pszText = (LPTSTR) (LPCTSTR) HeaderString;
if(Column<2)
LVColumn.cx = 110;
else
LVColumn.cx = 63;
LVColumn.fmt = LVCFMT_CENTER;
m_listday.InsertColumn (Column, &LVColumn);
}
CString temp;
temp.Format("今日零点",0);
m_listday.InsertItem(0,temp);
for(i=0;i<7;i++)
{
temp.Format("上%d天 0:00 ",i+1);
m_listday.InsertItem(i+1,temp);
}
UpdateData(FALSE);
initcom(com);
}
/////////////////////////////////////////////////////////////////////////////
// CDxMangerView printing
BOOL CDxMangerView::OnPreparePrinting(CPrintInfo* pInfo)
{
// default preparation
return DoPreparePrinting(pInfo);
}
void CDxMangerView::OnBeginPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
// TODO: add extra initialization before printing
}
void CDxMangerView::OnEndPrinting(CDC* /*pDC*/, CPrintInfo* /*pInfo*/)
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -