📄 paradrill.cpp
字号:
void CPARADRILL::OnPdrillDelete()
{
// TODO: Add your control notification handler code here
// Del Records
_variant_t strQuery;
strQuery = "select * from paradrill";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
POSITION pos = m_Pdrilllist.GetFirstSelectedItemPosition();
if ( pos == NULL )
{
AfxMessageBox(_T("没有选中的记录!"), MB_ICONEXCLAMATION);
return;
}
else
{
int iItem;
CString sID;
while (pos)
{
iItem = m_Pdrilllist.GetNextSelectedItem(pos);
sID= m_Pdrilllist.GetItemText(iItem, 0);
strQuery = "delete from paradrill where id='"+sID+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
m_Pdrilllist.DeleteItem(iItem);
}
}
m_sID="";
m_sCutdepth="";
m_sFeedrate="";
m_sMotorspeed="";
m_sPismaterial="";
m_sPismaterialneed="";
m_sRoughness="";
m_sTool="";
m_sToolneed="";
m_sDia="";
m_sDianeed="";
bt_delete->EnableWindow(false);
bt_modify->EnableWindow(false);
UpdateData(false);
}
void CPARADRILL::OnPdrillModify()
{
// TODO: Add your control notification handler code here
tx_Cutdepth->EnableWindow(true);
tx_Dia->EnableWindow(true);
tx_Feedrate->EnableWindow(true);
tx_Motorspeed->EnableWindow(true);
tx_Pismaterial->EnableWindow(true);
tx_Roughness->EnableWindow(true);
tx_Tool->EnableWindow(true);
tx_ID->EnableWindow(true);
bt_save->EnableWindow(true);
bt_delete->EnableWindow(false);
bt_modify->EnableWindow(false);
flag=2;
}
void CPARADRILL::OnPdrillQuery()
{
// TODO: Add your control notification handler code here
UpdateData(true);
_variant_t strQuery,Holder;
strQuery = "select * from paradrill where holedia='"+m_sDianeed+"' and wpmaterial='"+m_sPismaterialneed+"' and toolmaterial='"+m_sToolneed+"' order by drillra asc";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
CString str;
int iCounta = theApp.m_pADOSet->GetRecordCount();
if (0==iCounta)
{ AfxMessageBox(_T("没有相关记录!"), MB_ICONEXCLAMATION);
return;
}
theApp.m_pADOSet->MoveFirst();
for (int k=0; k<iCounta; k++)
{ // Get spindle
Holder = theApp.m_pADOSet->GetCollect("motorspindle");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrillresultlist.InsertItem(k, str);
// Get cutdepth
Holder = theApp.m_pADOSet->GetCollect("cutdepth");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrillresultlist.SetItemText(k, 1, str);
// Get feedrate
Holder = theApp.m_pADOSet->GetCollect("feedrate");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrillresultlist.SetItemText(k, 2, str);
theApp.m_pADOSet->MoveNext();
}
UpdateData(false);
}
void CPARADRILL::OnPdrillSave()
{
// TODO: Add your control notification handler code here
UpdateData(true);
// Make sure all needed info is available
CString sWarning="";
if ( ""==m_sID ) sWarning=_T("编号");
else if ( ""==m_sCutdepth) sWarning=_T("单次钻深");
else if ( ""==m_sFeedrate) sWarning=_T("进给量");
else if ( ""==m_sMotorspeed) sWarning=_T("电主轴转速");
else if ( ""==m_sDia) sWarning=_T("孔径尺寸");
if ( ""!=sWarning )
{
sWarning += _T("不能为空");
AfxMessageBox(sWarning, MB_ICONEXCLAMATION);
return;
}
_variant_t strQuery;
//添加记录
if (flag==1)
{
// Judge ID is unique
strQuery = "select * from paradrill where id='"+m_sID+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCount = theApp.m_pADOSet->GetRecordCount();
if ( 0!=iCount )
{
AfxMessageBox(_T("已经存在此刀具记录!"), MB_ICONEXCLAMATION);
return;
}
}
else if(flag==2)//修改
{ //删除旧记录
strQuery = "delete from paradrill where id='"+m_sID+"'";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
}
// Insert Record
strQuery = "insert paradrill (id,holedia, motorspindle, drilldepth,feedrate,drillra,wpmaterial,toolmaterial) \
values ('"+m_sID+"', '"+m_sDia+"','"+m_sMotorspeed+"', '"+m_sCutdepth+"','"+m_sFeedrate+"','"+m_sRoughness+"','"+m_sPismaterial+"','"+m_sTool+"')";
int iItem;
POSITION pos = m_Pdrilllist.GetFirstSelectedItemPosition();
iItem = m_Pdrilllist.GetNextSelectedItem(pos);
m_Pdrilllist.DeleteItem(iItem);
//更新列表框数据
int j;
j=m_Pdrilllist.GetItemCount();
m_Pdrilllist.InsertItem(j, m_sID);
m_Pdrilllist.SetItemText(j, 1 , m_sDia);
m_Pdrilllist.SetItemText(j, 2 , m_sMotorspeed);
m_Pdrilllist.SetItemText(j, 3 , m_sCutdepth);
m_Pdrilllist.SetItemText(j, 4 , m_sFeedrate);
m_Pdrilllist.SetItemText(j, 5 , m_sRoughness);
m_Pdrilllist.SetItemText(j, 6 , m_sPismaterial);
m_Pdrilllist.SetItemText(j, 7 , m_sTool);
//列表框数据初始化
/*_variant_t Holder;
CString str;
strQuery = "select * from paradrill";
theApp.ADOExecute(theApp.m_pADOSet, strQuery);
int iCounta = theApp.m_pADOSet->GetRecordCount();
if (0==iCounta) return ;
theApp.m_pADOSet->MoveFirst();
for (int i=0; i<iCounta; i++)
{ // Get id
Holder = theApp.m_pADOSet->GetCollect("id");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.InsertItem(i, str);
// Get holedia
Holder = theApp.m_pADOSet->GetCollect("holedia");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.SetItemText(i, 1, str);
// Get motorspindle
Holder = theApp.m_pADOSet->GetCollect("motorspindle");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.SetItemText(i, 2, str);
// Get cutdepth
Holder = theApp.m_pADOSet->GetCollect("drilldepth");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.SetItemText(i, 3, str);
// Get feedrate
Holder = theApp.m_pADOSet->GetCollect("feedrate");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.SetItemText(i, 4, str);
// Get drillra
Holder = theApp.m_pADOSet->GetCollect("drillra");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.SetItemText(i, 5, str);
// Get wpmaterial
Holder = theApp.m_pADOSet->GetCollect("wpmaterial");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.SetItemText(i, 6, str);
// Get toolmaterial
Holder = theApp.m_pADOSet->GetCollect("toolmaterial");
str = Holder.vt==VT_NULL?"":(char*)(_bstr_t)Holder;
m_Pdrilllist.SetItemText(i, 7, str);
theApp.m_pADOSet->MoveNext();
}*/
if ( theApp.ADOExecute(theApp.m_pADOSet, strQuery) )
{
if (flag==1)
{
AfxMessageBox(_T("添加加工用量信息成功!"), MB_ICONINFORMATION);
// Clear all input
m_sID=m_sDia=m_sMotorspeed=m_sCutdepth=m_sFeedrate=m_sRoughness=m_sPismaterial=m_sTool="";
UpdateData(false);
}
else AfxMessageBox(_T("修改加工用量信息成功!"), MB_ICONINFORMATION);
}
else
{
if (flag==1) AfxMessageBox(_T("添加加工用量信息失败!"), MB_ICONEXCLAMATION);
else AfxMessageBox(_T("修改加工用量信息失败!"), MB_ICONEXCLAMATION);
}
tx_Cutdepth->EnableWindow(false);
tx_Dia->EnableWindow(false);
tx_Feedrate->EnableWindow(false);
tx_Motorspeed->EnableWindow(false);
tx_Pismaterial->EnableWindow(false);
tx_Roughness->EnableWindow(false);
tx_Tool->EnableWindow(false);
tx_ID->EnableWindow(false);
bt_add->EnableWindow(true);
bt_save->EnableWindow(false);
bt_modify->EnableWindow(false);
bt_delete->EnableWindow(false);
}
void CPARADRILL::OnPdrillClear()
{
// TODO: Add your control notification handler code here
m_sDianeed="";
m_sPismaterialneed="";
m_sToolneed="";
while ( m_Pdrillresultlist.DeleteItem (0))
UpdateData(false);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -