AttDlg.cpp
Upload User: bjvcxy
Upload Date: 2021-05-06
Package Size: 2054k
Code Size: 3k
Development Platform:

Visual C++

  1. // AttDlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "Attendance.h"
  5. #include "AttDlg.h"
  6. #include "AttendanceDlg.h"
  7. #include "PersonRS.h"
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13. extern CDatabase db;
  14. /////////////////////////////////////////////////////////////////////////////
  15. // CAttDlg dialog
  16. CAttDlg::CAttDlg(CWnd* pParent /*=NULL*/)
  17. : CDialog(CAttDlg::IDD, pParent)
  18. {
  19. // 设置起始时间
  20. CTime End_t=CTime::GetCurrentTime(); // 当前时间
  21. CTimeSpan tp(30,0,0,0); // 时间间隔为30天
  22. //{{AFX_DATA_INIT(CAttDlg)
  23. m_StartTime = End_t-tp;
  24. m_EndTime = End_t;
  25. m_strPersonID = _T("");
  26. m_strName = _T("");
  27. m_bSeekbyperson = FALSE;
  28. m_bSeekbytime = FALSE;
  29. //}}AFX_DATA_INIT
  30. }
  31. void CAttDlg::DoDataExchange(CDataExchange* pDX)
  32. {
  33. CDialog::DoDataExchange(pDX);
  34. //{{AFX_DATA_MAP(CAttDlg)
  35. DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER1, m_StartTime);
  36. DDX_DateTimeCtrl(pDX, IDC_DATETIMEPICKER2, m_EndTime);
  37. DDX_Text(pDX, IDC_EDT_SEEKPERSONID, m_strPersonID);
  38. DDX_Text(pDX, IDC_EDT_SEEKPERSONNAME, m_strName);
  39. DDX_Check(pDX, IDC_CHK_SEEKBYPERSON, m_bSeekbyperson);
  40. DDX_Check(pDX, IDC_CHK_SEEKBYTIME, m_bSeekbytime);
  41. //}}AFX_DATA_MAP
  42. }
  43. BEGIN_MESSAGE_MAP(CAttDlg, CDialog)
  44. //{{AFX_MSG_MAP(CAttDlg)
  45. ON_EN_CHANGE(IDC_EDT_SEEKPERSONID, OnChangeEdtSeekpersonid)
  46. //}}AFX_MSG_MAP
  47. END_MESSAGE_MAP()
  48. /////////////////////////////////////////////////////////////////////////////
  49. // CAttDlg message handlers
  50. BOOL CAttDlg::OnInitDialog() 
  51. {
  52. CDialog::OnInitDialog();
  53. // TODO: Add extra initialization here
  54. m_Sheet.AddPage(&m_Page1); // 加第1页
  55. m_Sheet.AddPage(&m_Page2); // 加第2页
  56. m_Sheet.AddPage(&m_Page3); // 加第3页
  57. m_Sheet.AddPage(&m_Page4); // 加第4页
  58. m_Sheet.Create(this, WS_CHILD | WS_VISIBLE, 0); // 创建窗口
  59. m_Sheet.ModifyStyleEx (0, WS_EX_CONTROLPARENT); // 修改风格
  60. m_Sheet.ModifyStyle( 0, WS_TABSTOP ); // 修改风格
  61. // 设置窗口位置
  62. m_Sheet.SetWindowPos( NULL, 0, 100, 0, 0, 
  63. SWP_NOZORDER | SWP_NOSIZE | SWP_NOACTIVATE );
  64. return TRUE;  // return TRUE unless you set the focus to a control
  65.               // EXCEPTION: OCX Property Pages should return FALSE
  66. }
  67. void CAttDlg::OnChangeEdtSeekpersonid() 
  68. {
  69. UpdateData(); // 更新数据
  70. CPersonRS rs(&db); // 构造记录集
  71. rs.m_strFilter = "ID='" + m_strPersonID + "'"; // 设置过滤条件
  72. rs.Open(); // 打开记录集
  73. if(rs.GetRecordCount()==1) // 判断员工记录是否存在
  74. {
  75. m_strName=rs.m_NAME; // 得到员工姓名
  76. }
  77. else m_strName.Empty(); // 清除员工姓名的显示
  78. rs.Close(); // 关闭记录集
  79. UpdateData(FALSE); // 更新界面数据
  80. }