SBDestination.cpp
上传用户:furain
上传日期:2007-01-04
资源大小:14k
文件大小:1k
源码类别:

Shell编程

开发平台:

Visual C++

  1. // SBDestination.cpp: implementation of the CSBDestination class.
  2. //
  3. //////////////////////////////////////////////////////////////////////
  4. #include "stdafx.h"
  5. #include "SBDestination.h"
  6. #ifdef _DEBUG
  7. #undef THIS_FILE
  8. static char THIS_FILE[]=__FILE__;
  9. #define new DEBUG_NEW
  10. #endif
  11. //////////////////////////////////////////////////////////////////////
  12. // Construction/Destruction
  13. //////////////////////////////////////////////////////////////////////
  14. CSBDestination::CSBDestination(const HWND hParent, const int nTitleID)
  15. : CBrowseForFolder(hParent, NULL, nTitleID)
  16. {
  17. }
  18. CSBDestination::~CSBDestination()
  19. {
  20. }
  21. void CSBDestination::SetInitialSelection(const CString & strPath)
  22. {
  23. m_strInitialSelection = strPath;
  24. }
  25. void CSBDestination::OnInit() const
  26. {
  27. SetSelection(m_strInitialSelection);
  28. SetStatusText(m_strInitialSelection);
  29. }
  30. void CSBDestination::OnSelChanged(const LPITEMIDLIST pidl) const
  31. {
  32. CString strBuffer;
  33. if (SHGetPathFromIDList(pidl, strBuffer.GetBuffer(MAX_PATH)))
  34. strBuffer.ReleaseBuffer();
  35. else
  36. strBuffer.ReleaseBuffer(0);
  37. SetStatusText(strBuffer);
  38. }