📄 dlgtel.cpp
字号:
// DlgTel.cpp : implementation file
//
#include "stdafx.h"
#include "GsmSms.h"
#include "DlgTel.h"
#include "DlgAddTel.h"
#include "DlgModify.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern _PERSON_INFO_ m_person_info[FJD_PERSON_MAX];
extern int m_person_max;
/////////////////////////////////////////////////////////////////////////////
// CDlgTel dialog
CDlgTel::CDlgTel(CWnd* pParent /*=NULL*/)
: CDialog(CDlgTel::IDD, pParent)
{
//{{AFX_DATA_INIT(CDlgTel)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
InitFile = _T("");
}
void CDlgTel::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgTel)
DDX_Control(pDX, IDC_LIST_TEL, m_list_tel);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDlgTel, CDialog)
//{{AFX_MSG_MAP(CDlgTel)
ON_BN_CLICKED(IDC_TEL_ADD, OnTelAdd)
ON_BN_CLICKED(IDC_B_MODIFY, OnBModify)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDlgTel message handlers
void CDlgTel::OnCancel()
{
CDialog::OnCancel();
}
void CDlgTel::OnTelAdd()
{
CDlgAddTel m_addtel;
m_addtel.DoModal();
LoadPersonMessage();
AddList();
}
void CDlgTel::OnBModify()
{
int type;
int count = m_list_tel.GetSelectionMark();
if(count==-1){
AfxMessageBox("没有选择!");
return;
}
CDlgModify m_modfiy;
m_modfiy.m_tel_name = m_person_info[count].name;
m_modfiy.m_tel_num = m_person_info[count].number;
m_modfiy.m_rtu_sel = m_person_info[count].rtu;
m_modfiy.m_person_sel = count;
type = m_person_info[count].type;
if(type&SEND_TYPE_BHWJ) m_modfiy.m_check_act = TRUE;
if(type&SEND_TYPE_ALL) m_modfiy.m_check_all = TRUE;
if(type&SEND_TYPE_DEV) m_modfiy.m_check_dev = TRUE;
if(type&SEND_TYPE_LMT) m_modfiy.m_check_yc = TRUE;
if(type&SEND_TYPE_YX) m_modfiy.m_check_yx = TRUE;
m_modfiy.DoModal();
LoadPersonMessage();
AddList();
}
void CDlgTel::LoadPersonMessage()
{
int count = 0;
char asc[32];
char temp[32];
while(TRUE){
sprintf(asc,"person%d",count);
m_person_info[count].rtu = GetPrivateProfileInt("RTU",asc,-1,InitFile);
if(m_person_info[count].rtu == -1)
break;
sprintf(asc,"type%d",count);
m_person_info[count].type = GetPrivateProfileInt("SENDTYPE",asc,-1,InitFile);
if(m_person_info[count].type == -1)
break;
sprintf(asc,"name%d",count);
GetPrivateProfileString("TELNAME",asc,"not found",temp,32,InitFile);
if(!strcmp(m_person_info[count].name,"not found"))
break;
m_person_info[count].name = temp;
sprintf(asc,"code%d",count);
GetPrivateProfileString("TELCODE",asc,"not found",temp,32,InitFile);
if(!strcmp(m_person_info[count].number,"not found"))
break;
m_person_info[count].number = temp;
count++;
}
m_person_max = count;
}
BOOL CDlgTel::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
GetFjPath();
m_list_tel.SetExtendedStyle (LVS_EX_GRIDLINES|LVS_EX_FULLROWSELECT);
InitList();
AddList();
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDlgTel::InitList()
{
LV_COLUMN lvCol;
lvCol.mask = LVCF_FMT|LVCF_SUBITEM|LVCF_TEXT|LVCF_WIDTH;
lvCol.fmt = LVCFMT_LEFT;
lvCol.cx = 60;
lvCol.pszText="姓名";
lvCol.cchTextMax=4;
lvCol.iSubItem = 0;
m_list_tel.InsertColumn(lvCol.iSubItem, &lvCol);
lvCol.cx = 90;
lvCol.pszText="号码";
lvCol.cchTextMax=8;
lvCol.iSubItem = 1;
m_list_tel.InsertColumn(lvCol.iSubItem, &lvCol);
lvCol.cx = 95;
lvCol.pszText="厂站";
lvCol.cchTextMax=8;
lvCol.iSubItem = 2;
m_list_tel.InsertColumn(lvCol.iSubItem, &lvCol);
lvCol.cx = 40;
lvCol.pszText="遥信";
lvCol.cchTextMax=4;
lvCol.iSubItem = 3;
m_list_tel.InsertColumn(lvCol.iSubItem, &lvCol);
lvCol.cx = 40;
lvCol.pszText="越限";
lvCol.cchTextMax=4;
lvCol.iSubItem = 4;
m_list_tel.InsertColumn(lvCol.iSubItem, &lvCol);
lvCol.cx = 40;
lvCol.pszText="设备";
lvCol.cchTextMax=4;
lvCol.iSubItem = 5;
m_list_tel.InsertColumn(lvCol.iSubItem, &lvCol);
lvCol.cx = 40;
lvCol.pszText="保护";
lvCol.cchTextMax=4;
lvCol.iSubItem = 6;
m_list_tel.InsertColumn(lvCol.iSubItem, &lvCol);
}
void CDlgTel::AddList()
{
m_list_tel.DeleteAllItems();
CString s;
LV_ITEM lvItem;
lvItem.mask = LVIF_TEXT;
for(int i=0;i<m_person_max;i++)
{
lvItem.iItem = i;
lvItem.iSubItem = 0;
s = m_person_info[i].name;
lvItem.pszText = s.LockBuffer();
lvItem.cchTextMax = s.GetLength();
m_list_tel.InsertItem(&lvItem);
s.UnlockBuffer();
}
for(i=0;i<m_person_max;i++)
{
lvItem.iItem = i;
lvItem.iSubItem = 1;
s = m_person_info[i].number;
lvItem.pszText = s.LockBuffer();
lvItem.cchTextMax = s.GetLength();
m_list_tel.SetItem(&lvItem);
s.UnlockBuffer();
lvItem.iSubItem = 2;
FjLibGetRtuNameCs(m_person_info[i].rtu,s);
lvItem.pszText = s.LockBuffer();
lvItem.cchTextMax = s.GetLength();
m_list_tel.SetItem(&lvItem);
s.UnlockBuffer();
lvItem.iSubItem = 3;
if((m_person_info[i].type&SEND_TYPE_YX)||(m_person_info[i].type&SEND_TYPE_ALL)){
s = "是";
}else{
s = "否";
}
lvItem.pszText = s.LockBuffer();
lvItem.cchTextMax = s.GetLength();
m_list_tel.SetItem(&lvItem);
s.UnlockBuffer();
lvItem.iSubItem = 4;
if((m_person_info[i].type&SEND_TYPE_LMT)||(m_person_info[i].type&SEND_TYPE_ALL)){
s = "是";
}else{
s = "否";
}
lvItem.pszText = s.LockBuffer();
lvItem.cchTextMax = s.GetLength();
m_list_tel.SetItem(&lvItem);
s.UnlockBuffer();
lvItem.iSubItem = 5;
if((m_person_info[i].type&SEND_TYPE_DEV)||(m_person_info[i].type&SEND_TYPE_ALL)){
s = "是";
}else{
s = "否";
}
lvItem.pszText = s.LockBuffer();
lvItem.cchTextMax = s.GetLength();
m_list_tel.SetItem(&lvItem);
s.UnlockBuffer();
lvItem.iSubItem = 6;
if((m_person_info[i].type&SEND_TYPE_BHWJ)||(m_person_info[i].type&SEND_TYPE_ALL)){
s = "是";
}else{
s = "否";
}
lvItem.pszText = s.LockBuffer();
lvItem.cchTextMax = s.GetLength();
m_list_tel.SetItem(&lvItem);
s.UnlockBuffer();
Invalidate(TRUE);
}
}
void CDlgTel::GetFjPath()
{
char SysPath[128];
int i;
SysPath[0]=0;
GetPrivateProfileString("SysPath","SysPath",SysPath,SysPath,sizeof(SysPath),"c:\\FJ95NT.ini");
if (SysPath[0]==0) {
::GetModuleFileName(AfxGetInstanceHandle(),SysPath,sizeof(SysPath));
i=lstrlen(SysPath);
while(TRUE) { if (SysPath[i]==92 || i==0 ) break; i--; }
if (i) i--;
while(TRUE) { if (SysPath[i]==92 || i==0 ) break; i--; }
SysPath[i]=0;
}
InitFile = SysPath;
InitFile += "\\init\\GsmSms.ini";
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -