GuiComboBoxExt.h
上传用户:wlkj888
上传日期:2022-08-01
资源大小:806k
文件大小:4k
源码类别:

对话框与窗口

开发平台:

Visual C++

  1. /****************************************************************************
  2.  * *  
  3.  * GuiToolKit   *
  4.  *  (MFC extension) *  
  5.  * Created by Francisco Campos G. www.beyondata.com fcampos@beyondata.com *
  6.  *--------------------------------------------------------------------------*    
  7.  * *
  8.  * This program is free software;so you are free to use it any of your *
  9.  * applications (Freeware, Shareware, Commercial),but leave this header *
  10.  * intact. *
  11.  * *
  12.  * These files are provided "as is" without warranty of any kind. *
  13.  * *
  14.  *        GuiToolKit is forever FREE CODE !!!!! *
  15.  * *
  16.  *--------------------------------------------------------------------------*
  17.  * Created by: Francisco Campos G. *
  18.  * Bug Fixes and improvements : (Add your name) *
  19.  * -Francisco Campos *
  20.  * *
  21.  ****************************************************************************/
  22. #if !defined(AFX_GUICOMBOBOXEXT_H__4E237771_A1F4_11D5_A8C4_0008C7B2934C__INCLUDED_)
  23. #define AFX_GUICOMBOBOXEXT_H__4E237771_A1F4_11D5_A8C4_0008C7B2934C__INCLUDED_
  24. #if _MSC_VER > 1000
  25. #pragma once
  26. #endif // _MSC_VER > 1000
  27. // CGuiComboBoxExt.h : header file
  28. //
  29. #include "GuiDrawLayer.h"
  30. /////////////////////////////////////////////////////////////////////////////
  31. // CGuiComboBoxExt window
  32. class GUILIBDLLEXPORT CGuiComboBoxExt : public CComboBox
  33. {
  34. // Construction
  35. public:
  36. CGuiComboBoxExt();
  37. virtual ~CGuiComboBoxExt();
  38. // Attributes
  39. public:
  40. // Operations
  41. public:
  42. enum enTypeShow{CM_NORMAL=0,CM_ONFOCUS,CM_SELECCIONADO};
  43. public:
  44. BOOL m_bOverCombo;
  45. int m_iWidthDrowDown;
  46. COLORREF m_clrBtnFace;
  47. COLORREF m_clrBtnLight;
  48. COLORREF m_clrBtnDark;
  49. CFont m_Font;
  50. BOOL m_bPress;
  51. BOOL        m_bFondoXp;
  52. BOOL m_IsCallMiniTool;
  53. BOOL bhistory;
  54. public:
  55. //******************************************************
  56. void DrawCombo(enTypeShow enShow,CDC* pDC);
  57. void DrawArrow(CDC* pDC,CRect m_rc);
  58. void SetColor(COLORREF clrFace);
  59. void        AutoColor(BOOL bColor=TRUE);
  60. int AddString(LPCTSTR lpszString);
  61. void        ActiveHistory(BOOL bHistory);
  62. void LoadHistory(CString szHistory,BOOL bLoadCurrent);
  63. void SaveHistory(CString szHistory,BOOL bSaveCurrent);
  64. void DeleteHistory(CString szHistory);
  65. virtual void PreSubclassWindow();
  66. virtual BOOL PreTranslateMessage(MSG* pMsg);
  67. virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
  68. virtual void MeasureItem(LPMEASUREITEMSTRUCT lpMeasureItemStruct);
  69. // Generated message map functions
  70. protected:
  71. CImageList m_imgArrow; //imagen arrow
  72. CPoint mHeight;
  73. GuiDrawLayer m_dw;
  74. BOOL bColor;
  75. protected:
  76. //{{AFX_MSG(CGuiComboBoxExt)
  77. afx_msg void OnLButtonDown(UINT nFlags, CPoint point);
  78. afx_msg void OnLButtonUp(UINT nFlags, CPoint point);
  79. afx_msg void OnPaint();
  80. afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
  81. afx_msg void OnTimer(UINT nIDEvent);
  82. //afx_msg void OnKillFocus(CWnd* pNewWnd);
  83. afx_msg void OnCbnKillfocus();//version 7.0
  84. afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct);
  85. afx_msg void OnSetFocus(CWnd* pOldWnd);
  86. afx_msg void OnSysColorChange( );
  87. afx_msg void OnCloseup();
  88. afx_msg void OnSize(UINT nType, int cx, int cy);
  89. //}}AFX_MSG
  90. DECLARE_MESSAGE_MAP()
  91. public:
  92. afx_msg void OnCbnEditupdate();
  93. afx_msg void OnCbnSelchange();
  94. };
  95. /////////////////////////////////////////////////////////////////////////////
  96. //{{AFX_INSERT_LOCATION}}
  97. // Microsoft Visual C++ will insert additional declarations immediately before the previous line.
  98. #endif // !defined(AFX_GUICOMBOBOXEXT_H__4E237771_A1F4_11D5_A8C4_0008C7B2934C__INCLUDED_)