SetYCDlg.cpp
上传用户:shtiemo
上传日期:2017-12-29
资源大小:163k
文件大小:2k
开发平台:

Visual C++

  1. // SetYCDlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "PasRTDat.h"
  5. #include "SetYCDlg.h"
  6. #include "RTDatOpr.h"
  7. #include "RtListView.h"
  8. #ifdef _DEBUG
  9. #define new DEBUG_NEW
  10. #undef THIS_FILE
  11. static char THIS_FILE[] = __FILE__;
  12. #endif
  13. /////////////////////////////////////////////////////////////////////////////
  14. // SetYCDlg dialog
  15. SetYCDlg::SetYCDlg(CWnd* pParent /*=NULL*/)
  16. : CDialog(SetYCDlg::IDD, pParent)
  17. {
  18. //{{AFX_DATA_INIT(SetYCDlg)
  19. m_NewValue = 0.0f;
  20. m_OldValue = 0.0f;
  21. m_YCName = _T("");
  22. //}}AFX_DATA_INIT
  23. }
  24. void SetYCDlg::DoDataExchange(CDataExchange* pDX)
  25. {
  26. CDialog::DoDataExchange(pDX);
  27. //{{AFX_DATA_MAP(SetYCDlg)
  28. DDX_Text(pDX, IDC_EDITNEWVALUE, m_NewValue);
  29. DDX_Text(pDX, IDC_EDITOLDVALUE, m_OldValue);
  30. DDX_Text(pDX, IDC_EDITYCNAME, m_YCName);
  31. DDV_MaxChars(pDX, m_YCName, 64);
  32. //}}AFX_DATA_MAP
  33. }
  34. BEGIN_MESSAGE_MAP(SetYCDlg, CDialog)
  35. //{{AFX_MSG_MAP(SetYCDlg)
  36. //}}AFX_MSG_MAP
  37. END_MESSAGE_MAP()
  38. /////////////////////////////////////////////////////////////////////////////
  39. // SetYCDlg message handlers
  40. void SetYCDlg::OnOK() 
  41. {
  42. // TODO: Add extra validation here
  43. if (bYXYCAryBusy) return;
  44. bYXYCAryBusy = TRUE;
  45. FreeFileYXYCInfo();
  46. UpdateData(TRUE);
  47. float NewValue = m_NewValue;
  48. int start;
  49. char NewYC[16];
  50. sprintf(NewYC,"%f",m_NewValue);
  51. CListCtrl& ListCtrl = m_pListV->GetListCtrl(); 
  52. ListCtrl.SetItemText(RowIndex,3,NewYC);
  53. float fCoef, fOffSet;
  54. CString strInfo;
  55. if (gRtuID == 9999)
  56. start = 0;
  57. else
  58. start = GetRTUYXYCStartIdx(gRtuID,1);
  59. int i = start + RowIndex;
  60. PRTUYC pRTUYC = new RTUYC;
  61. memcpy(&(pRTUYC->DBID), &(YCInfoAry1[i]->DBID), sizeof(DBID)); 
  62. pRTUYC->fVal = m_NewValue;
  63. if (GetMeaCoef(&(pRTUYC->DBID), &fCoef, &fOffSet, strInfo))
  64. pRTUYC->fVal = pRTUYC->fVal/fCoef;
  65. else
  66. pRTUYC->fVal = pRTUYC->fVal/fCoef;
  67. YCInfoAry1[i]->fVal = m_NewValue/fCoef;
  68. YCInfoAry2.Add(pRTUYC);
  69. bYXYCAryBusy = FALSE;
  70. SendAllDataToADM();
  71. CDialog::OnOK();
  72. }