📄 ddjdzsz.cpp
字号:
// Ddjdzsz.cpp : implementation file
//
#include "stdafx.h"
#include "yhjk.h"
#include "Ddjdzsz.h"
#include "ExternDllHeader.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CDdjdzsz dialog
CDdjdzsz::CDdjdzsz(CWnd* pParent /*=NULL*/)
: CDialog(CDdjdzsz::IDD, pParent)
{
//{{AFX_DATA_INIT(CDdjdzsz)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CDdjdzsz::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDdjdzsz)
DDX_Control(pDX, IDC_EDTNAME, m_EdtName);
DDX_Control(pDX, IDC_EDTID, m_EdtID);
DDX_Control(pDX, IDC_BUT_SAVE, m_ButSave);
DDX_Control(pDX, IDC_BUT_EXIT, m_ButExit);
DDX_Control(pDX, IDC_BUT_ADD, m_ButAdd);
DDX_Control(pDX, IDC_LIST, m_Grid);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CDdjdzsz, CDialog)
//{{AFX_MSG_MAP(CDdjdzsz)
ON_NOTIFY(LVN_ITEMCHANGING, IDC_LIST, OnItemchangingList)
ON_BN_CLICKED(IDC_BUT_ADD, OnButAdd)
ON_BN_CLICKED(IDC_BUT_SAVE, OnButSave)
ON_BN_CLICKED(IDC_BUT_EXIT, OnButExit)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CDdjdzsz message handlers
void CDdjdzsz::OnOK()
{
// TODO: Add extra validation here
//Dialog::OnOK();
}
BOOL CDdjdzsz::OnInitDialog()
{
CDialog::OnInitDialog();
RxRecordset rst;
rst.Open("动作设置表");
this->m_Grid.SetRecordset(rst);
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CDdjdzsz::OnItemchangingList(NMHDR* pNMHDR, LRESULT* pResult)
{
NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
CString sID,sName;
sID=this->m_Grid.GetItemText(m_Grid.GetSelectionMark(),0);
sName=this->m_Grid.GetItemText(m_Grid.GetSelectionMark(),1);
m_EdtID.SetWindowText(sID);
m_EdtName.SetWindowText(sName);
*pResult = 0;
}
void CDdjdzsz::OnButAdd()
{
CString sNewID;
sNewID=ado.AutoNumber("动作设置表","编号","",1);
this->m_EdtID.SetWindowText(sNewID);
this->Enabled(true);
this->m_EdtName.SetWindowText("");
this->m_EdtName.SetFocus();
}
void CDdjdzsz::Enabled(bool bEnabled)
{
m_EdtName.EnableWindow(bEnabled);
m_ButSave.EnableWindow(bEnabled);
m_ButExit.EnableWindow(!bEnabled);
m_ButAdd.EnableWindow(!bEnabled);
m_Grid.EnableWindow(!bEnabled);
}
void CDdjdzsz::OnButSave()
{
if(MessageBox("确定要保存记录吗?","系统提示",MB_OK|MB_ICONSTOP)!=1)
return;
CString sSQL,sID,sName;
this->m_EdtID.GetWindowText(sID);
this->m_EdtName.GetWindowText(sName);
sSQL.Format("Insert Into 动作设置表 values(%s,'%s')",sID,sName);
RxRecordset rst;
rst.Open(sSQL,adCmdText);
//向触警参数表中写入新数据
rst.Open("系统设置表");
CString sLayers,sAddrLength,sActLength,LayerID,sActID,sNewID;
sLayers=rst.GetFieldValue("楼层数");
sAddrLength=rst.GetFieldValue("地址编码长度");
sActLength=rst.GetFieldValue("动作编码长度");
rst.Open("动作设置表");
int nCount=rst.GetRecordCount();
for(int i=1;i<=atoi(sLayers);i++)
{
LayerID=TenToTwo(i);
//用“0”将字符串添充到指定长度
LayerID=Padl(LayerID,atoi(sAddrLength),"0",1);
if(LayerID.GetLength()>=atoi(sAddrLength))
{
LayerID=LayerID.Right(atoi(sAddrLength));
}
sActID=TenToTwo(atoi(sID));
if(sActID.GetLength()>atoi(sActLength))
sActID=sActID.Right(atoi(sActLength));
if(sActID.GetLength()<atoi(sActLength))
sActID=Padl(sActID,atoi(sActLength),"0",1);
sNewID=LayerID+sActID;
sSQL.Format("Insert Into 处警参数设置表 Values('%s',%d,%s)",sNewID,i,sID);
if(rst.Open(sSQL,adCmdText)==false)
break;
}
this->Enabled(false);
this->m_ButAdd.SetFocus();
rst.Open("动作设置表");
m_Grid.DeleteAllItems();
m_Grid.AddCellText(rst);
}
void CDdjdzsz::OnButExit()
{
this->OnCancel();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -