Bookdlg.cpp
上传用户:hahaxixi
上传日期:2022-04-15
资源大小:1939k
文件大小:6k
源码类别:

手机短信编程

开发平台:

Visual C++

  1. // Bookdlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "NoteManage.h"
  5. #include "Bookdlg.h"
  6. #include "ADOConn.h"
  7. #ifdef _DEBUG
  8. #define new DEBUG_NEW
  9. #undef THIS_FILE
  10. static char THIS_FILE[] = __FILE__;
  11. #endif
  12. /////////////////////////////////////////////////////////////////////////////
  13. // CBookdlg dialog
  14. CBookdlg::CBookdlg(CWnd* pParent /*=NULL*/)
  15. : CDialog(CBookdlg::IDD, pParent)
  16. {
  17. //{{AFX_DATA_INIT(CBookdlg)
  18. // NOTE: the ClassWizard will add member initialization here
  19. //}}AFX_DATA_INIT
  20. }
  21. void CBookdlg::DoDataExchange(CDataExchange* pDX)
  22. {
  23. CDialog::DoDataExchange(pDX);
  24. //{{AFX_DATA_MAP(CBookdlg)
  25. DDX_Control(pDX, IDC_BUTTONDUTY, m_ButDuty);
  26. DDX_Control(pDX, IDC_BUTTONDEP, m_ButDep);
  27. DDX_Control(pDX, IDC_BUTTONALL, m_ButAll);
  28. DDX_Control(pDX, IDC_COMBO2, m_Duty);
  29. DDX_Control(pDX, IDC_COMBO1, m_Dep);
  30. DDX_Control(pDX, IDC_LIST1, m_Grid);
  31. //}}AFX_DATA_MAP
  32. }
  33. BEGIN_MESSAGE_MAP(CBookdlg, CDialog)
  34. //{{AFX_MSG_MAP(CBookdlg)
  35. ON_NOTIFY(NM_DBLCLK, IDC_LIST1, OnDblclkList1)
  36. ON_BN_CLICKED(IDC_BUTTONDEP, OnButtondep)
  37. ON_BN_CLICKED(IDC_BUTTONDUTY, OnButtonduty)
  38. ON_BN_CLICKED(IDC_BUTTONALL, OnButtonall)
  39. //}}AFX_MSG_MAP
  40. END_MESSAGE_MAP()
  41. /////////////////////////////////////////////////////////////////////////////
  42. // CBookdlg message handlers
  43. BOOL CBookdlg::OnInitDialog() 
  44. {
  45. CDialog::OnInitDialog();
  46. // TODO: Add extra initialization here
  47. //设置列表视图的扩展风格
  48. m_Grid.SetExtendedStyle(LVS_EX_FLATSB
  49. |LVS_EX_FULLROWSELECT
  50. |LVS_EX_HEADERDRAGDROP
  51. |LVS_EX_ONECLICKACTIVATE
  52. |LVS_EX_GRIDLINES);
  53. m_Grid.InsertColumn(0,"编号",LVCFMT_LEFT,40,0); //设置表头
  54. m_Grid.InsertColumn(1,"姓名",LVCFMT_LEFT,50,1); 
  55. m_Grid.InsertColumn(2,"性别",LVCFMT_LEFT,40,2);
  56. m_Grid.InsertColumn(3,"职务",LVCFMT_LEFT,40,3);
  57. m_Grid.InsertColumn(4,"部门",LVCFMT_LEFT,50,4);
  58. m_Grid.InsertColumn(5,"电话",LVCFMT_LEFT,100,5);
  59. m_Num = 0;
  60. ADOConn m_ADOConn;
  61. m_ADOConn.OnInitADOConn();
  62. CString sql;
  63. int i = 0;
  64. sql.Format("select * from tb_phonebook");
  65. m_ADOConn.m_pRecordset = m_ADOConn.GetRecordSet((_bstr_t)sql);
  66. while(!m_ADOConn.m_pRecordset->adoEOF)
  67. {
  68. m_Grid.InsertItem(i,"");
  69. m_Grid.SetItemText(i,0,(char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("编号"));
  70. m_Grid.SetItemText(i,1,(char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("姓名"));
  71. m_Grid.SetItemText(i,2,(char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("性别"));
  72. m_Grid.SetItemText(i,3,(char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("职务"));
  73. m_Grid.SetItemText(i,4,(char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("所在部门"));
  74. m_Grid.SetItemText(i,5,(char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("电话号码"));
  75. m_ADOConn.m_pRecordset->MoveNext();
  76. i++;
  77. }
  78. m_ADOConn.ExitConnect();
  79. m_ButDep.SetBitmap(LoadBitmap(AfxGetInstanceHandle(),
  80. MAKEINTRESOURCE(IDB_BUTDEP1))); //设置位图
  81. m_ButDep.SetHBitmap(LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BUTDEP2)),
  82. LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BUTDEP1)));
  83. m_ButDuty.SetBitmap(LoadBitmap(AfxGetInstanceHandle(),
  84. MAKEINTRESOURCE(IDB_BUTDUTY1))); //设置位图
  85. m_ButDuty.SetHBitmap(LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BUTDUTY2)),
  86. LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BUTDUTY1)));
  87. m_ButAll.SetBitmap(LoadBitmap(AfxGetInstanceHandle(),
  88. MAKEINTRESOURCE(IDB_BUTALL1))); //设置位图
  89. m_ButAll.SetHBitmap(LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BUTALL2)),
  90. LoadBitmap(AfxGetInstanceHandle(),MAKEINTRESOURCE(IDB_BUTALL1)));
  91. return TRUE;  // return TRUE unless you set the focus to a control
  92.               // EXCEPTION: OCX Property Pages should return FALSE
  93. }
  94. void CBookdlg::OnDblclkList1(NMHDR* pNMHDR, LRESULT* pResult) 
  95. {
  96. // TODO: Add your control notification handler code here
  97. m_Num = 1;
  98. int pos = m_Grid.GetSelectionMark();
  99. m_ID[0]    = m_Grid.GetItemText(pos,0);
  100. m_Name[0]  = m_Grid.GetItemText(pos,1);
  101. m_Phone[0] = m_Grid.GetItemText(pos,5);
  102. CDialog::OnCancel();
  103. *pResult = 0;
  104. }
  105. void CBookdlg::OnButtondep() 
  106. {
  107. // TODO: Add your control notification handler code here
  108. CString str;
  109. m_Dep.GetLBText(m_Dep.GetCurSel(),str);
  110. ADOConn m_ADOConn;
  111. m_ADOConn.OnInitADOConn();
  112. CString sql;
  113. sql.Format("select * from tb_phonebook where 所在部门 = '%s'",str);
  114. m_ADOConn.m_pRecordset = m_ADOConn.GetRecordSet((_bstr_t)sql);
  115. while(!m_ADOConn.m_pRecordset->adoEOF)
  116. {
  117. m_ID[m_Num]    = (char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("编号");
  118. m_Name[m_Num]  = (char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("姓名");
  119. m_Phone[m_Num] = (char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("电话号码");
  120. m_ADOConn.m_pRecordset->MoveNext();
  121. m_Num++;
  122. }
  123. m_ADOConn.ExitConnect();
  124. CDialog::OnCancel();
  125. }
  126. void CBookdlg::OnButtonduty() 
  127. {
  128. // TODO: Add your control notification handler code here
  129. CString str;
  130. m_Duty.GetLBText(m_Duty.GetCurSel(),str);
  131. ADOConn m_ADOConn;
  132. m_ADOConn.OnInitADOConn();
  133. CString sql;
  134. sql.Format("select * from tb_phonebook where 职务 = '%s'",str);
  135. m_ADOConn.m_pRecordset = m_ADOConn.GetRecordSet((_bstr_t)sql);
  136. while(!m_ADOConn.m_pRecordset->adoEOF)
  137. {
  138. m_ID[m_Num]    = (char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("编号");
  139. m_Name[m_Num]  = (char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("姓名");
  140. m_Phone[m_Num] = (char*)(_bstr_t)m_ADOConn.m_pRecordset->GetCollect("电话号码");
  141. m_ADOConn.m_pRecordset->MoveNext();
  142. m_Num++;
  143. }
  144. m_ADOConn.ExitConnect();
  145. CDialog::OnCancel();
  146. }
  147. void CBookdlg::OnButtonall() 
  148. {
  149. // TODO: Add your control notification handler code here
  150. m_Num = m_Grid.GetItemCount();
  151. for(int i=0;i<m_Num;i++)
  152. {
  153. m_ID[i]    = m_Grid.GetItemText(i,0);
  154. m_Name[i]  = m_Grid.GetItemText(i,1);
  155. m_Phone[i] = m_Grid.GetItemText(i,5);
  156. }
  157. CDialog::OnCancel();
  158. }