AnnuncePanel.cpp
上传用户:dzyhzl
上传日期:2019-04-29
资源大小:56270k
文件大小:3k
源码类别:

模拟服务器

开发平台:

C/C++

  1. // AnnuncePanel.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "autoupdate.h"
  5. #include "AnnuncePanel.h"
  6. #include "AutoUpdateRes.h"
  7. #ifdef _DEBUG
  8. #define new DEBUG_NEW
  9. #undef THIS_FILE
  10. static char THIS_FILE[] = __FILE__;
  11. #endif
  12. BITMAP bmp_info;
  13. /////////////////////////////////////////////////////////////////////////////
  14. // AnnuncePanel dialog
  15. const CString Downloadurl = "http://www.jxonline.net/index/dl_up.shtml";
  16. AnnuncePanel::AnnuncePanel(CWnd* pParent /*=NULL*/)
  17. : CDialog(AnnuncePanel::IDD, pParent)
  18. {
  19. //{{AFX_DATA_INIT(AnnuncePanel)
  20. m_NoticeInfo = _T("系统检测到您的游戏版本太旧,以至无法完成自动升级。");
  21.     m_NoticeInfo = m_NoticeInfo + 'n' + _T("您需要下载最新的升级包进行升级。");
  22. //}}AFX_DATA_INIT
  23. }
  24. void AnnuncePanel::DoDataExchange(CDataExchange* pDX)
  25. {
  26. CDialog::DoDataExchange(pDX);
  27. //{{AFX_DATA_MAP(AnnuncePanel)
  28. DDX_Text(pDX, IDC_NoticeInfo, m_NoticeInfo);
  29. //}}AFX_DATA_MAP
  30. }
  31. BEGIN_MESSAGE_MAP(AnnuncePanel, CDialog)
  32. //{{AFX_MSG_MAP(AnnuncePanel)
  33. ON_BN_CLICKED(IDC_BUTTON1, OnCancel)
  34. ON_WM_PAINT()
  35. //}}AFX_MSG_MAP
  36. END_MESSAGE_MAP()
  37. /////////////////////////////////////////////////////////////////////////////
  38. // AnnuncePanel message handlers
  39. void AnnuncePanel::OnOK() 
  40. {
  41. // TODO: Add extra validation here
  42. ShellExecute(NULL,"open",Downloadurl,NULL,NULL,SW_SHOW);
  43. CDialog::OnOK();
  44. }
  45. void AnnuncePanel::OnCancel() 
  46. {
  47. // TODO: Add your control notification handler code here
  48. CDialog::OnCancel();
  49. }
  50. BOOL AnnuncePanel::OnInitDialog() 
  51. {
  52. CDialog::OnInitDialog();
  53. // TODO: Add extra initialization here
  54. m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
  55. HBITMAP TempBitMap = LoadBitmap(m_ResModule, MAKEINTRESOURCE(IDB_TITLE));
  56. if(!m_bmTitle.Attach(TempBitMap)) {
  57. }
  58. // LoadBitMapFromInstance(m_bmTitle, m_ResModule, IDB_TITLE);
  59. SetIcon(m_hIcon, TRUE); // Set big icon
  60. SetIcon(m_hIcon, FALSE); // Set small icon
  61. if (!((HBITMAP)m_bmTitle))
  62. {
  63.     return 0;
  64. }
  65. m_bmTitle.GetBitmap(&bmp_info);
  66.     CRect WindowRange(0,0, bmp_info.bmWidth - 60, 400);
  67. MoveWindow(WindowRange);
  68. CenterWindow(NULL);
  69. return TRUE;  // return TRUE unless you set the focus to a control
  70.               // EXCEPTION: OCX Property Pages should return FALSE
  71. }
  72. void AnnuncePanel::OnPaint() 
  73. {
  74. // CPaintDC dc(this); // device context for painting
  75. CPaintDC PaintDC(this); 
  76. if (IsIconic())
  77. {
  78. }
  79. else
  80. {
  81. //CDialog::OnPaint();
  82. //画标题
  83.         CDC dc;
  84.         CBitmap *pOldBitmap = NULL;
  85. dc.CreateCompatibleDC(&PaintDC);
  86.         pOldBitmap = dc.SelectObject(&m_bmTitle);
  87. PaintDC.BitBlt(0, 0, bmp_info.bmWidth, bmp_info.bmHeight, &dc, 30, 0, SRCCOPY);
  88.         dc.SelectObject(pOldBitmap);
  89. }
  90. // TODO: Add your message handler code here
  91. // Do not call CDialog::OnPaint() for painting messages
  92. }