MainFrm.cpp
上传用户:job1860
上传日期:2021-12-04
资源大小:1510k
文件大小:3k
源码类别:

Ftp客户端

开发平台:

Visual C++

  1. // MainFrm.cpp : implementation of the CMainFrame class
  2. //
  3. #include "stdafx.h"
  4. #include "MyFtp.h"
  5. #include "MainFrm.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CMainFrame
  13. IMPLEMENT_DYNCREATE(CMainFrame, CFrameWnd)
  14. BEGIN_MESSAGE_MAP(CMainFrame, CFrameWnd)
  15. //{{AFX_MSG_MAP(CMainFrame)
  16. ON_WM_CREATE()
  17. ON_WM_TIMER()
  18. ON_COMMAND(IDM_EXIT, OnExit)
  19. ON_WM_CLOSE()
  20. //}}AFX_MSG_MAP
  21. END_MESSAGE_MAP()
  22. static UINT indicators[] =
  23. {
  24. ID_SEPARATOR,           // status line indicator
  25. IDS_TIMER,
  26. // IDS_PROGRESS,
  27. // ID_INDICATOR_CAPS,
  28. // ID_INDICATOR_NUM,
  29. // ID_INDICATOR_SCRL,
  30. };
  31. /////////////////////////////////////////////////////////////////////////////
  32. // CMainFrame construction/destruction
  33. CMainFrame::CMainFrame()
  34. {
  35. // TODO: add member initialization code here
  36. // m_bAutoMenuEnable = FALSE;
  37. }
  38. CMainFrame::~CMainFrame()
  39. {
  40. }
  41. int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct)
  42. {
  43. if (CFrameWnd::OnCreate(lpCreateStruct) == -1)
  44. return -1;
  45. if (!m_wndStatusBar.Create(this) ||
  46. !m_wndStatusBar.SetIndicators(indicators,
  47. sizeof(indicators)/sizeof(UINT)))
  48. {
  49. TRACE0("Failed to create status barn");
  50. return -1;      // fail to create
  51. }
  52. // TODO: Delete these three lines if you don't want the toolbar to
  53. //  be dockable
  54.     //WS_OVERLAPPED窗口是指有标题栏有边框的窗口
  55.     
  56. // SetWindowLong(m_hWnd,GWL_STYLE,GetWindowLong(m_hWnd,GWL_STYLE)&~WS_OVERLAPPED);
  57. SetTimer(1,1000,NULL);  //一秒发送WM_TIMER消息
  58. return 0;
  59. }
  60. BOOL CMainFrame::PreCreateWindow(CREATESTRUCT& cs)
  61. {
  62. if( !CFrameWnd::PreCreateWindow(cs) )
  63. return FALSE;
  64. // TODO: Modify the Window class or styles here by modifying
  65. //  the CREATESTRUCT cs
  66. //设置窗口的大小
  67.     cs.cx=450;
  68. cs.cy=550;
  69. return TRUE;
  70. }
  71. /////////////////////////////////////////////////////////////////////////////
  72. // CMainFrame diagnostics
  73. #ifdef _DEBUG
  74. void CMainFrame::AssertValid() const
  75. {
  76. CFrameWnd::AssertValid();
  77. }
  78. void CMainFrame::Dump(CDumpContext& dc) const
  79. {
  80. CFrameWnd::Dump(dc);
  81. }
  82. #endif //_DEBUG
  83. /////////////////////////////////////////////////////////////////////////////
  84. // CMainFrame message handlers
  85. void CMainFrame::OnTimer(UINT nIDEvent) 
  86. {
  87. // TODO: Add your message handler code here and/or call default
  88. //用于在状态栏显示当前时间
  89. CTime t=CTime::GetCurrentTime();
  90. CString str=t.Format("%H:%M:%S");
  91.     
  92. CClientDC dc(this);
  93.     CSize sz=dc.GetTextExtent(str);
  94.     m_wndStatusBar.SetPaneInfo(1,IDS_TIMER,SBPS_NORMAL,sz.cx);
  95. m_wndStatusBar.SetPaneText(1,str);
  96. CFrameWnd::OnTimer(nIDEvent);
  97. }
  98. void CMainFrame::OnExit() 
  99. {
  100. // TODO: Add your command handler code here
  101. //退出程序的响应函数
  102.     if(IDYES==MessageBox("确定要退出客户端吗?","警告",MB_YESNO|MB_ICONWARNING))
  103. CFrameWnd::OnClose();
  104. }
  105. void CMainFrame::OnClose() 
  106. {
  107. // TODO: Add your message handler code here and/or call default
  108. //WM_CLOSE的响应函数
  109. OnExit();
  110. }