📄 exadg_2.cpp
字号:
// ExaDg_2.cpp : implementation file
//
#include "stdafx.h"
#include "Example_2.h"
#include "ExaDg_2.h"
#include <afxpriv.h>
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// ExaDg_2 dialog
ExaDg_2::ExaDg_2(CExample_2Doc* pDoc,CWnd* pParent /*=NULL*/)
: CDialog(ExaDg_2::IDD, pParent)
{
ASSERT_VALID(pDoc);
m_pDoc=pDoc;
m_Add=FALSE;
//{{AFX_DATA_INIT(ExaDg_2)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void ExaDg_2::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
DDX_Text(pDX,IDC_EDIT1,m_pDoc->m_Exaset.m_fy);
DDX_Text(pDX,IDC_EDIT10,m_pDoc->m_Exaset.m_f9);
DDX_Text(pDX,IDC_EDIT11,m_pDoc->m_Exaset.m_f10);
DDX_Text(pDX,IDC_EDIT2,m_pDoc->m_Exaset.m_f1);
DDX_Text(pDX,IDC_EDIT3,m_pDoc->m_Exaset.m_f2);
DDX_Text(pDX,IDC_EDIT4,m_pDoc->m_Exaset.m_f3);
DDX_Text(pDX,IDC_EDIT5,m_pDoc->m_Exaset.m_f4);
DDX_Text(pDX,IDC_EDIT6,m_pDoc->m_Exaset.m_f5);
DDX_Text(pDX,IDC_EDIT7,m_pDoc->m_Exaset.m_f6);
DDX_Text(pDX,IDC_EDIT8,m_pDoc->m_Exaset.m_f7);
DDX_Text(pDX,IDC_EDIT9,m_pDoc->m_Exaset.m_f8);
//{{AFX_DATA_MAP(ExaDg_2)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(ExaDg_2, CDialog)
//{{AFX_MSG_MAP(ExaDg_2)
ON_MESSAGE_VOID(WM_KICKIDLE,OnKickIdle)
ON_COMMAND(ID_RECORD_FIRST, OnRecordFirst)
ON_UPDATE_COMMAND_UI(ID_RECORD_FIRST, OnUpdateRecordFirst)
ON_COMMAND(ID_RECORD_NEXT, OnRecordNext)
ON_UPDATE_COMMAND_UI(ID_RECORD_NEXT, OnUpdateRecordNext)
ON_COMMAND(ID_RECORD_PREV, OnRecordPrev)
ON_UPDATE_COMMAND_UI(ID_RECORD_PREV, OnUpdateRecordPrev)
ON_COMMAND(ID_RECORD_LAST, OnRecordLast)
ON_UPDATE_COMMAND_UI(ID_RECORD_LAST, OnUpdateRecordLast)
ON_COMMAND(ID_RECORD_ADD, OnRecordAdd)
ON_UPDATE_COMMAND_UI(ID_RECORD_ADD, OnUpdateRecordAdd)
ON_COMMAND(ID_RECORD_DELETE, OnRecordDelete)
ON_UPDATE_COMMAND_UI(ID_RECORD_DELETE, OnUpdateRecordDelete)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// ExaDg_2 message handlers
BOOL ExaDg_2::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
if (!m_TBar.Create(this)||
!m_TBar.LoadToolBar(IDR_TOOLBAR1))
{
TRACE0("在对话框中增加工具条失败\n");
EndDialog(IDCANCEL);
}
CRect rcClientStart;
CRect rcClientNow;
GetClientRect(rcClientStart);// 把工具栏放在(0.0)点,
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,
0,reposQuery,rcClientNow);
CPoint ptOffset(rcClientNow.left - rcClientStart.left,
rcClientNow.top - rcClientStart.top);
CRect rcChild;
CWnd* pwndChild = GetWindow(GW_CHILD);
while (pwndChild)
{
pwndChild->GetWindowRect(rcChild);
ScreenToClient(rcChild);
rcChild.OffsetRect(ptOffset);
pwndChild->MoveWindow(rcChild,FALSE);
pwndChild=pwndChild->GetNextWindow();
}
CRect rcWindow;
GetWindowRect(rcWindow);
rcWindow.right += rcClientStart.Width() - rcClientNow.Width();
rcWindow.bottom += rcClientStart.Height() - rcClientNow.Height();
MoveWindow(rcWindow, FALSE);
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_FIRST,0);
CenterWindow();
return TRUE;
// return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void ExaDg_2::OnKickIdle()
{
SendMessageToDescendants(WM_IDLEUPDATECMDUI);
}
void ExaDg_2::OnRecordFirst()
{
// TODO: Add your command handler code here
Adding();
if((!m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF()) ||
(m_pDoc->m_Exaset.IsBOF()&&!m_pDoc->m_Exaset.IsEOF()))
;
else
{
m_pDoc->m_Exaset.Edit();
UpdateData();
m_pDoc->m_Exaset.Update();
}
m_pDoc->m_Exaset.MoveFirst();
UpdateData(FALSE);
}
void ExaDg_2::OnUpdateRecordFirst(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if(m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF())
pCmdUI->Enable(FALSE);
else
pCmdUI->Enable(TRUE);
}
void ExaDg_2::OnRecordNext()
{
// TODO: Add your command handler code here
if(m_pDoc->m_Exaset.IsBOF()&&!m_pDoc->m_Exaset.IsEOF())
{
m_pDoc->m_Exaset.MoveFirst();
}
else
{
m_pDoc->m_Exaset.Edit();
UpdateData();
m_pDoc->m_Exaset.Update();
m_pDoc->m_Exaset.MoveNext();
}
UpdateData(FALSE);
}
void ExaDg_2::OnUpdateRecordNext(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if((m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF()) ||
(!m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF()))
pCmdUI->Enable(FALSE);
else
pCmdUI->Enable(TRUE);
}
void ExaDg_2::OnRecordPrev()
{
// TODO: Add your command handler code here
Adding();
if(!m_pDoc->m_Exaset.IsBOF() && m_pDoc->m_Exaset.IsEOF())
{
m_pDoc->m_Exaset.MoveLast();
}
else
{
m_pDoc->m_Exaset.Edit();
UpdateData();
m_pDoc->m_Exaset.Update();
m_pDoc->m_Exaset.MovePrev();
}
UpdateData(FALSE);
}
void ExaDg_2::OnUpdateRecordPrev(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if((m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF()) ||
(m_pDoc->m_Exaset.IsBOF()&&!m_pDoc->m_Exaset.IsEOF()))
pCmdUI->Enable(FALSE);
else
pCmdUI->Enable(TRUE);
}
void ExaDg_2::OnRecordLast()
{
// TODO: Add your command handler code here
Adding();
if((m_pDoc->m_Exaset.IsBOF()&&!m_pDoc->m_Exaset.IsEOF()) ||
(!m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF()))
;
else
{
m_pDoc->m_Exaset.Edit();
UpdateData();
m_pDoc->m_Exaset.Update();
}
m_pDoc->m_Exaset.MoveLast();
UpdateData(FALSE);
}
void ExaDg_2::OnUpdateRecordLast(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if(m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF())
pCmdUI->Enable(FALSE);
else
pCmdUI->Enable(TRUE);
}
void ExaDg_2::OnRecordAdd()
{
// TODO: Add your command handler code here
Adding();
if((m_pDoc->m_Exaset.IsBOF()&&!m_pDoc->m_Exaset.IsEOF())||
(!m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF())||
(m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF()))
;
else
{
UpdateData(TRUE);
m_pDoc->m_Exaset.Edit();
m_pDoc->m_Exaset.Update();
}
m_pDoc->m_Exaset.Requery();
m_pDoc->m_Exaset.AddNew();
m_Add=TRUE;
m_pDoc->m_Exaset.m_fy=0;
m_pDoc->m_Exaset.m_f1=0;
m_pDoc->m_Exaset.m_f2=0;
m_pDoc->m_Exaset.m_f3=0;
m_pDoc->m_Exaset.m_f4=0;
m_pDoc->m_Exaset.m_f5=0;
m_pDoc->m_Exaset.m_f6=0;
m_pDoc->m_Exaset.m_f7=0;
m_pDoc->m_Exaset.m_f8=0;
m_pDoc->m_Exaset.m_f9=0;
m_pDoc->m_Exaset.m_f10=0;
UpdateData(FALSE);
}
void ExaDg_2::OnUpdateRecordAdd(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
//不需要处理此程序。任何时候都可以增加记录
}
void ExaDg_2::OnRecordDelete()
{
// TODO: Add your command handler code here
m_pDoc->m_Exaset.Delete();
m_pDoc->m_Exaset.MoveNext();
if (m_pDoc->m_Exaset.IsBOF())
{
m_pDoc->m_Exaset.SetFieldNull(NULL);
m_pDoc->m_Exaset.Requery();
}
else
if(m_pDoc->m_Exaset.IsEOF())
m_pDoc->m_Exaset.MoveLast();
UpdateData(FALSE);
}
void ExaDg_2::OnUpdateRecordDelete(CCmdUI* pCmdUI)
{
// TODO: Add your command update UI handler code here
if(m_pDoc->m_Exaset.IsBOF()&&m_pDoc->m_Exaset.IsEOF())
pCmdUI->Enable(FALSE);
else
pCmdUI->Enable(TRUE);
}
void ExaDg_2::Adding()
{
if(m_Add)
{
m_Add=FALSE;
UpdateData(TRUE);
m_pDoc->m_Exaset.Update();
m_pDoc->m_Exaset.Requery();
UpdateData(FALSE);
}
}
void ExaDg_2::OnOK()
{
// TODO: Add extra validation here
Adding();
if(!m_pDoc->m_Exaset.IsBOF()&&!m_pDoc->m_Exaset.IsEOF())
{
m_pDoc->m_Exaset.Edit();
UpdateData();
m_pDoc->m_Exaset.Update();
//m_pDoc->m_Exaset.MoveLast();
UpdateData(FALSE);
}
CDialog::OnOK();
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -