ResizableMinMax.h
上传用户:xjjlds
上传日期:2015-12-05
资源大小:22823k
文件大小:2k
源码类别:

多媒体编程

开发平台:

Visual C++

  1. // ResizableMinMax.h: interface for the CResizableMinMax class.
  2. //
  3. /////////////////////////////////////////////////////////////////////////////
  4. //
  5. // Copyright (C) 2000-2002 by Paolo Messina
  6. // (http://www.geocities.com/ppescher - ppescher@yahoo.com)
  7. //
  8. // The contents of this file are subject to the Artistic License (the "License").
  9. // You may not use this file except in compliance with the License. 
  10. // You may obtain a copy of the License at:
  11. // http://www.opensource.org/licenses/artistic-license.html
  12. //
  13. // If you find this code useful, credits would be nice!
  14. //
  15. /////////////////////////////////////////////////////////////////////////////
  16. #if !defined(AFX_RESIZABLEMINMAX_H__INCLUDED_)
  17. #define AFX_RESIZABLEMINMAX_H__INCLUDED_
  18. #if _MSC_VER > 1000
  19. #pragma once
  20. #endif // _MSC_VER > 1000
  21. class CResizableMinMax  
  22. {
  23. // Attributes
  24. private:
  25. // flags
  26. BOOL m_bUseMaxTrack;
  27. BOOL m_bUseMinTrack;
  28. BOOL m_bUseMaxRect;
  29. POINT m_ptMinTrackSize; // min tracking size
  30. POINT m_ptMaxTrackSize; // max tracking size
  31. POINT m_ptMaxPos; // maximized position
  32. POINT m_ptMaxSize; // maximized size
  33. public:
  34. CResizableMinMax();
  35. virtual ~CResizableMinMax();
  36. protected:
  37. void MinMaxInfo(LPMINMAXINFO lpMMI);
  38. void SetMaximizedRect(const CRect& rc); // set window rect when maximized
  39. void ResetMaximizedRect(); // reset to default maximized rect
  40. void SetMinTrackSize(const CSize& size); // set minimum tracking size
  41. void ResetMinTrackSize(); // reset to default minimum tracking size
  42. void SetMaxTrackSize(const CSize& size); // set maximum tracking size
  43. void ResetMaxTrackSize(); // reset to default maximum tracking size
  44. };
  45. #endif // !defined(AFX_RESIZABLEMINMAX_H__INCLUDED_)