C++范例Kit3911Nd.docx
《C++范例Kit3911Nd.docx》由会员分享,可在线阅读,更多相关《C++范例Kit3911Nd.docx(18页珍藏版)》请在冰点文库上搜索。
![C++范例Kit3911Nd.docx](https://file1.bingdoc.com/fileroot1/2023-5/1/9c6fd883-c71f-435b-b564-2f54129173d0/9c6fd883-c71f-435b-b564-2f54129173d01.gif)
C++范例Kit3911Nd
C源码-->>PartOne
#if!
defined(AFXMsi_VCTICKMsi_HMsi_7D4C7130Msi_2583Msi_476DMsi_972BMsi_4737907ECD30Msi_INCLUDEDMsi_)
#defineAFXMsi_VCTICKMsi_HMsi_7D4C7130Msi_2583Msi_476DMsi_972BMsi_4737907ECD30Msi_INCLUDEDMsi_
#ifMsi_MSCMsi_VER>1000
#pragmaonce
#endifMsi_MSCMsi_VER>1000
MachinegeneratedIDispatchwrapperclass(es)createdbyMicrosoftVisualC++
NOTE:
Donotmodifythecontentsofthisfile.Ifthisclassisregeneratedby
MicrosoftVisualC++,yourmodificationswillbeoverwritten.
CVcTickwrapperclass
classCVcTick:
publicCOleDispatchDriver
{
public:
CVcTick(){}CallsCOleDispatchDriverdefaultconstructor
CVcTick(LPDISPATCHpDispatch):
COleDispatchDriver(pDispatch){}
CVcTick(constCVcTick&dispatchSrc):
COleDispatchDriver(dispatchSrc){}
Attributes
public:
Operations
public:
floatGetLength();
voidSetLength(floatnewValue);
longGetStyle();
voidSetStyle(longnNewValue);
};
{{AFXMsi_INSERTMsi_LOCATION}}
MicrosoftVisualC++willinsertadditionaldeclarationsimmediatelybeforethepreviousline.
#endif!
defined(AFXMsi_VCTICKMsi_HMsi_7D4C7130Msi_2583Msi_476DMsi_972BMsi_4737907ECD30Msi_INCLUDEDMsi_)
C源码-->>PartTwo
ListDHDJ.cpp:
implementationoftheCListDHDJclass.
#include"stdafx.h"
#include"a1.h"
#include"ListDHDJ.h"
#include"myfunction.h"
#ifdefMsi_DEBUG
#undefTHISMsi_FILE
staticcharTHISMsi_FILE[]=Msi_FILEMsi_;
#definenewDEBUGMsi_NEW
#endif
ConstructionDestruction
CListDHDJ:
:
CListDHDJ()
{
mMsi_pstrlistKc=newCStringList[4];
for(inti=0;i<100;i++)
{
mMsi_iTheItemState[i]=0;
mMsi_iKc1Selected[i]=-1;
mMsi_iKc2Selected[i]=-1;
}
this->InitValuesFromDB();
}
CListDHDJ:
:
~CListDHDJ()
{
delete[]mMsi_pstrlistKc;
}
voidCListDHDJ:
:
OnNewEditChange(constint&item,constint&subMsi_item)
{
TRACE("voidCListXSDJ:
:
OnNewEditChange()\n");
if(this->mMsi_bSetValue)return;
ASSERT(this->mMsi_poplist!
=NULL);
CStringstr;
mMsi_edit.GetWindowText(str);
CStringstrMsi_sl=this->GetItemText(item,4);
switch(subMsi_item)
{
case0:
{
str.MakeUpper();
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
this->mMsi_iTheItemState[item]=NOCK;
intsl=0;
sl=atoi(strMsi_sl);
if(sl&&str!
=this->mMsi_sSetFocus&&mMsi_iKc1Selected[item]>=0&&mMsi_iKc2Selected[item]>=0)
this->CancelTheItem(item);
this->mMsi_poplist->RefreshListCtrlView(0,str);
this->mMsi_iKc1Selected[item]=-1;
this->mMsi_iKc2Selected[item]=-1;
break;
}
case1:
{
CStringid=this->GetItemText(item,0);
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
this->mMsi_iTheItemState[item]=NOID;
intsl=0;
sl=atoi(strMsi_sl);
if(sl&&str!
=this->mMsi_sSetFocus&&mMsi_iKc1Selected[item]>=0&&mMsi_iKc2Selected[item]>=0)
this->CancelTheItem(item);
this->mMsi_poplist->RefreshListCtrlView(1,str,id,0);
this->mMsi_iKc1Selected[item]=-1;
this->mMsi_iKc2Selected[item]=-1;
break;
}
case2:
{
str.MakeUpper();
CStringid=this->GetItemText(item,0);
CStringckMsi_name2=this->GetItemText(item,3);
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
this->mMsi_iTheItemState[item]=NONAME;
intsl=0;
sl=atoi(strMsi_sl);
if(sl&&str!
=this->mMsi_sSetFocus&&mMsi_iKc1Selected[item]>=0&&mMsi_iKc2Selected[item]>=0)
this->CancelTheItem(item);
this->mMsi_poplist->RefreshListCtrlView(0,id,2,ckMsi_name2,2,str);
this->mMsi_iKc1Selected[item]=-1;
this->mMsi_iKc2Selected[item]=-1;
break;
}
case3:
{
str.MakeUpper();
CStringid=this->GetItemText(item,0);
CStringckMsi_name1=this->GetItemText(item,2);
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
this->mMsi_iTheItemState[item]=NONAME;
intsl=0;
sl=atoi(strMsi_sl);
if(sl&&str!
=this->mMsi_sSetFocus&&mMsi_iKc1Selected[item]>=0&&mMsi_iKc2Selected[item]>=0)
this->CancelTheItem(item);
this->mMsi_poplist->RefreshListCtrlView(0,id,2,ckMsi_name1,2,str);
this->mMsi_iKc1Selected[item]=-1;
this->mMsi_iKc2Selected[item]=-1;
break;
}
case4:
{
CStringid=this->GetItemText(item,0);
CStringckMsi_name=this->GetItemText(item,2);
CStringa;
POSITIONpos=this->mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc1Selected[item]);
a.Format("%d",mMsi_lKc1Number-atoi(str)+this->mMsi_edit.mMsi_dSetFocusValue);
this->mMsi_pstrlistKc[3].SetAt(pos,a);
pos=this->mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc2Selected[item]);
a.Format("%d",mMsi_lKc2Number+atoi(str)-this->mMsi_edit.mMsi_dSetFocusValue);
this->mMsi_pstrlistKc[3].SetAt(pos,a);
this->mMsi_poplist->RefreshListCtrlView(0,id,2,"");
mMsi_poplist->ShowListPop();
break;
}
}
}
voidCListDHDJ:
:
OnEditSetFocus(constint&item,constint&subitem)
{
CStringstr;
mMsi_edit.mMsi_dSetFocusValue=0;
mMsi_edit.GetWindowText(str);
this->mMsi_sSetFocus=str;
mMsi_edit.GetWindowRect(&this->mMsi_rectWindow);
str.MakeUpper();
switch(subitem)
{
case0:
{
CStringid=this->GetItemText(item,1);
this->mMsi_poplist->ShowWindow(SWMsi_HIDE);
ASSERT(this->mMsi_poplist!
=NULL);
this->mMsi_poplist->SetShowPosition(this->mMsi_rectWindow,&mMsi_edit);
this->mMsi_poplist->RefreshListCtrlView(0,str);
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
break;
}
case1:
{
this->mMsi_poplist->ShowWindow(SWMsi_HIDE);
ASSERT(this->mMsi_poplist!
=NULL);
this->mMsi_poplist->SetShowPosition(this->mMsi_rectWindow,&mMsi_edit);
CStringid=this->GetItemText(item,0);
this->mMsi_poplist->RefreshListCtrlView(1,str,id,0);
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
break;
}
case2:
{
this->mMsi_poplist->ShowWindow(SWMsi_HIDE);
ASSERT(this->mMsi_poplist!
=NULL);
this->mMsi_poplist->SetShowPosition(this->mMsi_rectWindow,&mMsi_edit);
CStringid=this->GetItemText(item,0);
CStringckMsi_name2=this->GetItemText(item,3);
this->mMsi_poplist->RefreshListCtrlView(0,id,2,ckMsi_name2,2,str);
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
break;
}
case3:
{
this->mMsi_poplist->ShowWindow(SWMsi_HIDE);
ASSERT(this->mMsi_poplist!
=NULL);
this->mMsi_poplist->SetShowPosition(this->mMsi_rectWindow,&mMsi_edit);
CStringid=this->GetItemText(item,0);
CStringckMsi_name1=this->GetItemText(item,2);
this->mMsi_poplist->RefreshListCtrlView(0,id,2,ckMsi_name1,2,str);
if(!
mMsi_poplist->IsWindowVisible())
mMsi_poplist->ShowListPop();
break;
}
case4:
{
if(this->CheckKc(item))&&(IsSelected(item)!
=-1)
{
this->mMsi_poplist->ShowWindow(SWMsi_HIDE);
CStringid=this->GetItemText(item,0);
CStringckMsi_name1=this->GetItemText(item,2);
this->mMsi_edit.kcMsi_number=atoi();
this->mMsi_lKc1Number=atoi(mMsi_pstrlistKc[3].GetAt(mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc1Selected[item])));
this->mMsi_lKc2Number=atoi(mMsi_pstrlistKc[3].GetAt(mMsi_pstrlistKc[3].FindIndex(this->mMsi_iKc2Selected[item])));
CStringckMsi_name2=this->GetItemText(item,3);
if(ckMsi_name1==ckMsi_name2)gotowrongcase;
this->mMsi_poplist->SetShowPosition(this->mMsi_rectWindow,&mMsi_edit);
this->mMsi_poplist->RefreshListCtrlView(0,id,2,"");
mMsi_poplist->ShowListPop();
if(str!
="")
this->mMsi_edit.mMsi_dSetFocusValue=atoi(str);
}
else
{
this->mMsi_iEditedIndex=-1;
mMsi_edit.ShowWindow(SWMsi_HIDE);
this->SetNextItemFocus();
MessageBox("请确定有此库存信息!
!
","注意");
}
break;
}
}
return;
wrongcase:
MessageBox("调出库不能等于调入库!
","错误");
this->mMsi_iEditedIndex=1;
mMsi_edit.ShowWindow(SWMsi_HIDE);
this->SetNextItemFocus();
}
boolCListDHDJ:
:
OnEditReturn(constint&item,constint&subitem)
{
CStringstr;
mMsi_edit.GetWindowText(str);
switch(subitem)
{
case0:
case1:
{
if(this->mMsi_poplist->IsWindowVisible()&&this->mMsi_poplist->GetSelectedMark()>=0)
{
this->SetValueUnChange(mMsi_poplist->GetListCtrlSel(subitem));
this->SetItemText(mMsi_nItem,0,this->mMsi_poplist->GetListCtrlSel(0));
this->SetItemText(mMsi_nItem,1,this->mMsi_poplist->GetListCtrlSel
(1));
mMsi_iTheItemState[item]=NOWRONG;
}
else
SetValueUnChange("");
break;
}
case2:
case3:
{
if(this->mMsi_poplist->IsWindowVisible()&&this->mMsi_poplist->GetSelectedMark()>=0)
{
this->SetValueUnChange(mMsi_poplist->GetListCtrlSel
(2));
this->SetItemText(item,subitem,this->mMsi_poplist->GetListCtrlSel
(2));
mMsi_iTheItemState[item]=NOWRONG;
}
else
SetValueUnChange("");
break;
}
case4:
{
break;
}
}
returnCBaseList:
:
OnEditReturn(item,subitem);
}
voidCListDHDJ:
:
OnEditKillFocus(constint&item,constint&subitem)
{
TRACE("voidCListXSDJ:
:
OnEditKillFocus()\n");
CStringstr;
mMsi_edit.GetWindowText(str);
switch(subitem)
{
case2:
case3:
{
str.MakeUpper();
this->SetValueUnChange(str);
break;
}
}
CBaseList:
:
OnEditKillFocus(item,subitem);
}
boolCListDHDJ:
:
InitValuesFromDB()
{
LRunSqlmMsi_runsql;
CStringsql;
Msi_variantMsi_tvalue;
mMsi_pstrlistKc[0].AddTail("药品编号");
mMsi_pstrlistKc[1].AddTail("药品名称");
mMsi_pstrlistKc[2].AddTail("仓库名称");
mMsi_pstrlistKc[3].AddTail("库存数量");
mMsi_strlistNo.AddTail("");
sql.Format("selecttabkc.ypMsi_id,tabkc.ckMsi_name,tabkc.kcMsi_number,\
tabypinfo.ypMsi_namefromtabkc,tabypinfo\
wheretabkc.ypMsi_id=tabypinfo.ypMsi_id");
mMsi_runsql.CheckSQLResult(sql);
while(!
mMsi_runsql.mMsi_recordset->adoEOF)
{
value=mMsi_runsql.mMsi_recordset->GetCollect("ypMsi_id");
if(value.vt!
=VTMsi_NULL)
mMsi_pstrlistKc[0].AddTail((char)(Msi_bstrMsi_t)value);
value=mMsi_runsql.mMsi_recordset->GetCollect("ypMsi_name");
if(value.vt!
=VTMsi_NULL)
mMsi_pstrlistKc[1].AddTail((char)(Msi_bstrMsi_t)value);
value=mMsi_runsql.mMsi_recordset->GetCollect("ckMsi_name");
if(value.vt!
=VTMsi_NULL)
mMsi_pstrlistKc[2].AddTail((char)(Msi_bstrMsi_t)value);
value=mMsi_runsql.mMsi_recordset->GetCollect("kcMsi_number");
if(value.vt!
=VTMsi_NULL)
mMsi_pstrlistKc[3].AddTail((char)(Msi_bstrMsi_t)value);
mMsi_strlistNo.AddTail((char)(Msi_bstrMsi_t)value);
mMsi_runsql.mMsi_recordset->MoveNext();
}
returntrue;
}
boolCListDHDJ:
:
Create(DWORDdwStyle,constRECT&rect,CWndpParentWnd,UINTnID)
{
boolb=CBaseList:
:
Create(dwStyle,rect,pParentWnd,nID);
mMsi_poplist->SelectStringList(4