AlarmResultDlg.cpp
上传用户:zhanglf88
上传日期:2013-11-19
资源大小:6036k
文件大小:3k
源码类别:

金融证券系统

开发平台:

Visual C++

  1. // AlarmResultDlg.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "..stkui.h"
  5. #include "AlarmResultDlg.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CAlarmResultDlg property page
  13. IMPLEMENT_DYNCREATE(CAlarmResultDlg, CPropertyPageEx)
  14. CAlarmResultDlg::CAlarmResultDlg() : CPropertyPageEx(CAlarmResultDlg::IDD)
  15. {
  16. //{{AFX_DATA_INIT(CAlarmResultDlg)
  17. // NOTE: the ClassWizard will add member initialization here
  18. //}}AFX_DATA_INIT
  19. }
  20. CAlarmResultDlg::~CAlarmResultDlg()
  21. {
  22. }
  23. void CAlarmResultDlg::DoDataExchange(CDataExchange* pDX)
  24. {
  25. CPropertyPageEx::DoDataExchange(pDX);
  26. //{{AFX_DATA_MAP(CAlarmResultDlg)
  27. DDX_Control(pDX, IDC_LIST, m_list);
  28. //}}AFX_DATA_MAP
  29. }
  30. BEGIN_MESSAGE_MAP(CAlarmResultDlg, CPropertyPageEx)
  31. //{{AFX_MSG_MAP(CAlarmResultDlg)
  32. //}}AFX_MSG_MAP
  33. END_MESSAGE_MAP()
  34. /////////////////////////////////////////////////////////////////////////////
  35. // CAlarmResultDlg message handlers
  36. BOOL CAlarmResultDlg::OnInitDialog() 
  37. {
  38. CPropertyPageEx::OnInitDialog();
  39. // TODO: Add extra initialization here
  40. // TODO: Add extra initialization here
  41. m_list.SendMessage( LVM_SETEXTENDEDLISTVIEWSTYLE, 0, LVS_EX_FULLROWSELECT | LVS_EX_HEADERDRAGDROP
  42. | LVS_EX_FLATSB | LVS_EX_REGIONAL | LVS_EX_INFOTIP | LVS_EX_UNDERLINEHOT );
  43. m_list.EnableToolTips( );
  44. // insert columns
  45. {
  46. CString strCode = AfxGetVariantName(SLH_CODE,FALSE);
  47. CString strDiffPercent = AfxGetVariantName(SLH_DIFFPERCENT,FALSE);
  48. CString strReason;
  49. strReason.LoadString( IDS_ALARMRESULT_REASON );
  50. m_list.InsertColumn( 0, strCode, LVCFMT_CENTER, 90 );
  51. m_list.InsertColumn( 1, strDiffPercent, LVCFMT_CENTER, 110 );
  52. m_list.InsertColumn( 2, strReason, LVCFMT_CENTER, 220 );
  53. }
  54. CAlarmContainer & container = AfxGetAlarmContainer();
  55. for( int nIndex=0; nIndex<container.GetSize(); nIndex++ )
  56. {
  57. ALARM & alarm = container.ElementAt(nIndex);
  58. CString strCode = alarm.report.m_szCode;
  59. CString strDiffPercent = "-";
  60. if( alarm.report.m_fLast > 1e-4 )
  61. strDiffPercent.Format( ".2f", alarm.report.m_fNew/alarm.report.m_fLast-1 );
  62. CString strReason = container.GetDescript( alarm );
  63. int nItem = m_list.InsertItem( nIndex, strCode );
  64. m_list.SetItemText( nItem, 0, strCode );
  65. m_list.SetItemText( nItem, 1, strDiffPercent );
  66. m_list.SetItemText( nItem, 2, strReason );
  67. }
  68. return TRUE;  // return TRUE unless you set the focus to a control
  69.               // EXCEPTION: OCX Property Pages should return FALSE
  70. }