DlgCodeGIF.cpp
上传用户:gdjinyi
上传日期:2013-02-01
资源大小:1701k
文件大小:2k
源码类别:

源码/资料

开发平台:

Visual C++

  1. // DlgCodeGIF.cpp : implementation file
  2. //
  3. #include "stdafx.h"
  4. #include "ch1_1.h"
  5. #include "DlgCodeGIF.h"
  6. #ifdef _DEBUG
  7. #define new DEBUG_NEW
  8. #undef THIS_FILE
  9. static char THIS_FILE[] = __FILE__;
  10. #endif
  11. /////////////////////////////////////////////////////////////////////////////
  12. // CDlgCodeGIF dialog
  13. CDlgCodeGIF::CDlgCodeGIF(CWnd* pParent /*=NULL*/)
  14. : CDialog(CDlgCodeGIF::IDD, pParent)
  15. {
  16. //{{AFX_DATA_INIT(CDlgCodeGIF)
  17. m_strFilePath = _T("");
  18. m_bInterlace = FALSE;
  19. //}}AFX_DATA_INIT
  20. }
  21. void CDlgCodeGIF::DoDataExchange(CDataExchange* pDX)
  22. {
  23. CDialog::DoDataExchange(pDX);
  24. //{{AFX_DATA_MAP(CDlgCodeGIF)
  25. DDX_Text(pDX, IDC_EDIT_FileName, m_strFilePath);
  26. DDX_Radio(pDX, IDC_RADIO1, m_bInterlace);
  27. //}}AFX_DATA_MAP
  28. }
  29. BEGIN_MESSAGE_MAP(CDlgCodeGIF, CDialog)
  30. //{{AFX_MSG_MAP(CDlgCodeGIF)
  31. ON_BN_CLICKED(IDC_btnSaveAs, OnbtnSaveAs)
  32. //}}AFX_MSG_MAP
  33. END_MESSAGE_MAP()
  34. /////////////////////////////////////////////////////////////////////////////
  35. // CDlgCodeGIF message handlers
  36. void CDlgCodeGIF::OnbtnSaveAs() 
  37. {
  38. // 提示选择保存文件路径
  39. CFileDialog dlg(FALSE, "GIF", m_strFilePath, OFN_HIDEREADONLY, 
  40. "GIF图像文件 (*.GIF) | *.GIF|所有文件 (*.*) | *.*||", NULL);
  41. // 提示用户选择保存的路径
  42. if (dlg.DoModal() != IDOK)
  43. {
  44. // 返回
  45. return;
  46. }
  47. // 获取用户指定的文件路径
  48. m_strFilePath = dlg.GetPathName();
  49. // 更新
  50. UpdateData(FALSE);
  51. }
  52. void CDlgCodeGIF::OnOK() 
  53. {
  54. CFileFind fFind;
  55. // 更新
  56. UpdateData(TRUE);
  57. // 判断用户指定的文件是否存在
  58. if (fFind.FindFile(m_strFilePath, 0) != 0)
  59. {
  60. // 询问用户是否覆盖
  61. if (MessageBox("指定的文件已经存在,是否覆盖?", "系统提示", 
  62. MB_ICONQUESTION | MB_YESNO | MB_DEFBUTTON2) != IDYES)
  63. {
  64. // 退出
  65. return;
  66. }
  67. }
  68. // 调用默认的OnOK事件
  69. CDialog::OnOK();
  70. }