📄 myalview.cpp
字号:
CString strID;
for(i=0;i<nItemCount;i++)
{
nState=ListCtrl.GetItemState(i,LVIS_SELECTED);
if(nState!=0)
{
strID = ListCtrl.GetItemText(i,0);
break;
}
}
int nLen = strID.GetLength();
LPCSTR lpszBuf = strID.GetBuffer(nLen);
long lID = atol(lpszBuf);
CMyALDoc* pDoc = GetDocument();
pDoc->DisplayRecord(lID);
}
void CMyALView::OnFind()
{
m_pFindDlg = new CFindDlg(this);
m_pFindDlg->Create(IDD_FIND);
m_pFindDlg->CenterWindow();
m_pFindDlg->ShowWindow(SW_SHOW);
}
void CMyALView::Search()
{
BeginWaitCursor();
CMyALDoc* pDoc = GetDocument();
if(pDoc->m_pBaseInfoSet->IsOpen())
pDoc->m_pBaseInfoSet->Close();
pDoc->m_pBaseInfoSet->Open();
if(pDoc->m_pFamilySet->IsOpen())
pDoc->m_pFamilySet->Close();
pDoc->m_pFamilySet->Open();
if(pDoc->m_pUnitSet->IsOpen())
pDoc->m_pUnitSet->Close();
pDoc->m_pUnitSet->Open();
if(pDoc->m_pContactSet->IsOpen())
pDoc->m_pContactSet->Close();
pDoc->m_pContactSet->Open();
if(pDoc->m_pOtherSet->IsOpen())
pDoc->m_pOtherSet->Close();
pDoc->m_pOtherSet->Open();
if(pDoc->m_pActiveSet->IsOpen())
pDoc->m_pActiveSet->Close();
pDoc->m_pActiveSet->Open();
if(pDoc->m_pRemarkSet->IsOpen())
pDoc->m_pRemarkSet->Close();
pDoc->m_pRemarkSet->Open();
TRACE("%d ,%d ,%d\n",m_pFindDlg->m_nLocate,m_pFindDlg->m_nField,m_pFindDlg->m_nCondition);
DeleteAllItems();
int nFlag = 0;
switch(m_pFindDlg->m_nLocate)
{
case 0:
{
if(!(pDoc->m_pBaseInfoSet->IsBOF()&&pDoc->m_pBaseInfoSet->IsEOF()))
{
while(!pDoc->m_pBaseInfoSet->IsEOF())
{
if(pDoc->SearchBaseInfo(m_pFindDlg->m_nField, m_pFindDlg->m_nCondition, m_pFindDlg->m_strText, m_pFindDlg->m_nLogic, m_pFindDlg->m_oleDate))
{
DisplayRecord();
nFlag++;
}
pDoc->m_pBaseInfoSet->MoveNext();
pDoc->m_pFamilySet->MoveNext();
pDoc->m_pUnitSet->MoveNext();
pDoc->m_pContactSet->MoveNext();
}
}
break;
}
case 1:
{
if(!(pDoc->m_pBaseInfoSet->IsBOF()&&pDoc->m_pBaseInfoSet->IsEOF()))
{
while(!pDoc->m_pBaseInfoSet->IsEOF())
{
if(pDoc->SearchFamily(m_pFindDlg->m_nField, m_pFindDlg->m_nCondition, m_pFindDlg->m_strText))
{
DisplayRecord();
nFlag++;
}
pDoc->m_pBaseInfoSet->MoveNext();
pDoc->m_pFamilySet->MoveNext();
pDoc->m_pUnitSet->MoveNext();
pDoc->m_pContactSet->MoveNext();
}
}
break;
}
case 2:
{
if(!(pDoc->m_pBaseInfoSet->IsBOF()&&pDoc->m_pBaseInfoSet->IsEOF()))
{
while(!pDoc->m_pBaseInfoSet->IsEOF())
{
if(pDoc->SearchUnit(m_pFindDlg->m_nField, m_pFindDlg->m_nCondition, m_pFindDlg->m_strText))
{
DisplayRecord();
nFlag++;
}
pDoc->m_pBaseInfoSet->MoveNext();
pDoc->m_pFamilySet->MoveNext();
pDoc->m_pUnitSet->MoveNext();
pDoc->m_pContactSet->MoveNext();
}
}
break;
}
case 3:
{
if(!(pDoc->m_pBaseInfoSet->IsBOF()&&pDoc->m_pBaseInfoSet->IsEOF()))
{
while(!pDoc->m_pBaseInfoSet->IsEOF())
{
if(pDoc->SearchContact(m_pFindDlg->m_nField, m_pFindDlg->m_nCondition, m_pFindDlg->m_strText))
{
DisplayRecord();
nFlag++;
}
pDoc->m_pBaseInfoSet->MoveNext();
pDoc->m_pFamilySet->MoveNext();
pDoc->m_pUnitSet->MoveNext();
pDoc->m_pContactSet->MoveNext();
}
}
break;
}
case 4:
{
if(!(pDoc->m_pBaseInfoSet->IsBOF()&&pDoc->m_pBaseInfoSet->IsEOF()))
{
while(!pDoc->m_pBaseInfoSet->IsEOF())
{
if(pDoc->SearchOther(m_pFindDlg->m_nField, m_pFindDlg->m_nCondition, m_pFindDlg->m_strText))
{
DisplayRecord();
nFlag++;
}
pDoc->m_pBaseInfoSet->MoveNext();
pDoc->m_pFamilySet->MoveNext();
pDoc->m_pUnitSet->MoveNext();
pDoc->m_pContactSet->MoveNext();
pDoc->m_pOtherSet->MoveNext();
}
}
break;
}
case 5:
{
if(!(pDoc->m_pActiveSet->IsBOF()&&pDoc->m_pActiveSet->IsEOF()))
{
while(!pDoc->m_pActiveSet->IsEOF())
{
if(pDoc->SearchActive(m_pFindDlg->m_nField, m_pFindDlg->m_nCondition, m_pFindDlg->m_strText, m_pFindDlg->m_nLogic, m_pFindDlg->m_oleDate))
{
pDoc->m_pBaseInfoSet->MoveFirst();
pDoc->m_pFamilySet->MoveFirst();
pDoc->m_pUnitSet->MoveFirst();
pDoc->m_pContactSet->MoveFirst();
while(!pDoc->m_pBaseInfoSet->IsEOF())
{
if(pDoc->m_pActiveSet->m_ID == pDoc->m_pBaseInfoSet->m_ID)
{
if(!IsDiplay(pDoc->m_pBaseInfoSet->m_ID))
DisplayRecord();
nFlag++;
break;
}
pDoc->m_pBaseInfoSet->MoveNext();
pDoc->m_pFamilySet->MoveNext();
pDoc->m_pUnitSet->MoveNext();
pDoc->m_pContactSet->MoveNext();
}
}
pDoc->m_pActiveSet->MoveNext();
}
}
break;
}
case 6:
{
if(!(pDoc->m_pBaseInfoSet->IsBOF()&&pDoc->m_pBaseInfoSet->IsEOF()))
{
while(!pDoc->m_pBaseInfoSet->IsEOF())
{
if(pDoc->SearchRemark(m_pFindDlg->m_nField, m_pFindDlg->m_nCondition, m_pFindDlg->m_strText))
{
DisplayRecord();
nFlag++;
}
pDoc->m_pBaseInfoSet->MoveNext();
pDoc->m_pFamilySet->MoveNext();
pDoc->m_pUnitSet->MoveNext();
pDoc->m_pContactSet->MoveNext();
pDoc->m_pRemarkSet->MoveNext();
}
}
break;
}
}
EndWaitCursor();
if(nFlag==0)
{
MessageBox("很遗憾,没找到!","查找结果",MB_ICONASTERISK);
}
}
void CMyALView::OnDisplaypart()
{
BeginWaitCursor();
CListCtrl &ListCtrl = GetListCtrl();
int i,nState;
int nItemSelected = ListCtrl.GetSelectedCount();
int nItemCount = ListCtrl.GetItemCount();
if(nItemSelected<1) return;
CString strID;
for(i=0;i<nItemCount;i++)
{
nState=ListCtrl.GetItemState(i,LVIS_SELECTED);
if(nState!=0)
{
strID = ListCtrl.GetItemText(i,0);
break;
}
}
int nLen = strID.GetLength();
LPCSTR lpszBuf = strID.GetBuffer(nLen);
long lID = atol(lpszBuf);
CMyALDoc* pDoc = GetDocument();
pDoc->DisplayRecord(lID);
}
BOOL CMyALView::IsDiplay(long lID)
{
CListCtrl &ListCtrl = GetListCtrl();
int nCount = ListCtrl.GetItemCount();
char str[10];
ltoa(lID,str,10);
for(int n=0; n<nCount; n++)
{
if(str == ListCtrl.GetItemText(n,0))
return TRUE;
}
return FALSE;
}
void CMyALView::OnBrower()
{
BeginWaitCursor();
DeleteAllItems();
DisplayAllRecord();
EndWaitCursor();
}
void CMyALView::OnUpdateDisplaypart(CCmdUI* pCmdUI)
{
CListCtrl &ListCtrl = GetListCtrl();
int nItemSelected = ListCtrl.GetSelectedCount();
pCmdUI->Enable(nItemSelected>0);
}
void CMyALView::OnSortid()
{
m_nSortNumber = 0;
SortColumn( 0, FALSE);
}
void CMyALView::OnUpdateSortid(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio(m_nSortNumber == 0);
}
void CMyALView::OnSortname()
{
m_nSortNumber = 1;
SortColumn( 1, FALSE);
}
void CMyALView::OnUpdateSortname(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio(m_nSortNumber == 1);
}
void CMyALView::OnCotactTel()
{
m_nSortNumber = 2;
SortColumn( 2, FALSE);
}
void CMyALView::OnUpdateCotactTel(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio(m_nSortNumber == 2);
}
void CMyALView::OnFamilyTel()
{
m_nSortNumber = 3;
SortColumn( 3, FALSE);
}
void CMyALView::OnUpdateFamilyTel(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio(m_nSortNumber == 3);
}
void CMyALView::OnUnitTel()
{
m_nSortNumber = 4;
SortColumn( 4, FALSE);
}
void CMyALView::OnUpdateUnitTel(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio(m_nSortNumber == 4);
}
void CMyALView::OnHandset()
{
m_nSortNumber = 5;
SortColumn( 5, FALSE);
}
void CMyALView::OnUpdateHandset(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio(m_nSortNumber == 5);
}
void CMyALView::OnEmail()
{
m_nSortNumber = 6;
SortColumn( 6, FALSE);
}
void CMyALView::OnUpdateEmail(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio(m_nSortNumber == 6);
}
/*
void CMyALView::OnAscending()
{
SetItemSortState(m_nSortNumber, ASCENDING);
SortColumn( m_nSortNumber, FALSE);
}
void CMyALView::OnUpdateAscending(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio((GetItemSortState(m_nSortNumber) == ASCENDING));
}
void CMyALView::OnDegression()
{
SetItemSortState(m_nSortNumber, DESCENDING);
SortColumn( m_nSortNumber, FALSE);
}
void CMyALView::OnUpdateDegression(CCmdUI* pCmdUI)
{
pCmdUI->SetRadio((GetItemSortState(m_nSortNumber) == DESCENDING));
}
*/
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -