Setting.txt
上传用户:baina_li
上传日期:2013-03-23
资源大小:960k
文件大小:3k
源码类别:

射击游戏

开发平台:

Visual C++

  1. // SettingPage.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "fighter.h"
  5. #include "SettingPage.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CSettingPage property page
  13. IMPLEMENT_DYNCREATE(CSettingPage, CPropertyPage)
  14. CSettingPage::CSettingPage() : CPropertyPage(CSettingPage::IDD)
  15. {
  16. //{{AFX_DATA_INIT(CSettingPage)
  17. m_bBoss = TRUE;
  18. m_strBossFile = _T("");
  19. m_bShortcut = TRUE;
  20. m_bSound = TRUE;
  21. m_strShortcutName = _T("打飞机");
  22. //}}AFX_DATA_INIT
  23. }
  24. CSettingPage::~CSettingPage()
  25. {
  26. }
  27. void CSettingPage::DoDataExchange(CDataExchange* pDX)
  28. {
  29. CPropertyPage::DoDataExchange(pDX);
  30. //{{AFX_DATA_MAP(CSettingPage)
  31. DDX_Check(pDX, IDC_BOSS, m_bBoss);
  32. DDX_Text(pDX, IDC_BOSS_FILE, m_strBossFile);
  33. DDX_Check(pDX, IDC_SHORTCUT, m_bShortcut);
  34. DDX_Check(pDX, IDC_SOUND, m_bSound);
  35. DDX_Text(pDX, IDC_SHORTCUT_NAME, m_strShortcutName);
  36. //}}AFX_DATA_MAP
  37. }
  38. BEGIN_MESSAGE_MAP(CSettingPage, CPropertyPage)
  39. //{{AFX_MSG_MAP(CSettingPage)
  40. ON_BN_CLICKED(IDC_BOSS, OnBoss)
  41. ON_BN_CLICKED(IDC_BROWSE_BOSS_FILE, OnBrowseBossFile)
  42. //}}AFX_MSG_MAP
  43. END_MESSAGE_MAP()
  44. /////////////////////////////////////////////////////////////////////////////
  45. // CSettingPage message handlers
  46. void CSettingPage::OnBoss() 
  47. {
  48. // TODO: Add your control notification handler code here
  49. UpdateData(TRUE);
  50. if(m_bBoss)
  51. {
  52. (GetDlgItem(IDC_BOSS_FILE))->EnableWindow(TRUE);
  53. (GetDlgItem(IDC_BROWSE_BOSS_FILE))->EnableWindow(TRUE);
  54. }
  55. else
  56. {
  57. GetDlgItem(IDC_BOSS_FILE)->EnableWindow(FALSE);
  58. GetDlgItem(IDC_BROWSE_BOSS_FILE)->EnableWindow(FALSE);
  59. }
  60. }
  61. void CSettingPage::OnBrowseBossFile() 
  62. {
  63. // TODO: Add your control notification handler code here
  64. CFileDialog dlgFile(TRUE, "*.cpp", NULL, 
  65. OFN_ALLOWMULTISELECT|OFN_FILEMUSTEXIST|OFN_PATHMUSTEXIST|OFN_HIDEREADONLY,
  66. _T("C++ Files (*.cpp)|*.cpp|Text Files (*.txt)|*.txt|All Files (*.*)|*.*||"), this);
  67. if(dlgFile.DoModal()!=IDOK)
  68. return;
  69. m_strBossFile = dlgFile.GetPathName();
  70. UpdateData(FALSE);
  71. }
  72. BOOL CSettingPage::OnInitDialog() 
  73. {
  74. CPropertyPage::OnInitDialog();
  75. // TODO: Add extra initialization here
  76. char pathname[_MAX_PATH];
  77. char drive[_MAX_DRIVE];
  78. char dir[_MAX_DIR];
  79. char fname[_MAX_FNAME];
  80. char ext[_MAX_EXT];
  81. GetModuleFileName(NULL, pathname, _MAX_PATH);
  82. _splitpath(pathname, drive, dir, fname, ext);
  83. m_strBossFile.Format("%s%sSetting.txt", drive, dir);
  84. UpdateData(FALSE);
  85. return TRUE;  // return TRUE unless you set the focus to a control
  86.               // EXCEPTION: OCX Property Pages should return FALSE
  87. }