📄 fmwnd.h
字号:
#if !defined(AFX_FMWND_H__A1769377_C632_4542_99A3_C771447D761C__INCLUDED_)#define AFX_FMWND_H__A1769377_C632_4542_99A3_C771447D761C__INCLUDED_#if _MSC_VER > 1000#pragma once#endif // _MSC_VER > 1000// FMWnd.h : header file///////////////////////////////////////////////////////////////////////////////// RxFMWnd window#define WS_RX_CAPTION 0x00000001L // FMWindow style#define WS_RX_LOCALIZER 0x00000002L // Localizer scroll bar#define RXSZ_CAP_HEIGHT 18 // height of caption#define RXSZ_CAP_BUTTON 14 // button size#define RXSZ_CAP_BMARGIN 1 // button - (gab) - button#define RXSZ_CAP_GMARGIN 8 // grip line - (gab) - buttons#define RXSZ_CAP_SMARGIN 5 // separator gab#define RXSZ_CAP_LMARGIN 8#define RXSZ_CAP_RMARGIN 2#define RXSZ_LOCAL_HEIGHT 16#define RXSZ_LOCAL_GRIP 14#define RXSZ_LOCAL_BORDER 1#define RXCBS_REMOVE 0xFFF0 // Caption Button Style#define RXCBS_NORMAL 0x0001#define RXCBS_SELECT 0x0002#define RXCBS_FOCUS 0x0004#define RXCBS_DISABLED 0x0008#define RXCBS_CHECK 0x0010#define RXCBS_VISIBLE 0X0100#define RXCBS_CHECKBOX 0x0200#define RXCBS_SEPARATOR 0x1000#define RXHT_CAPTION 100#define RXHT_CROP_SLIDER 101#define RXRS_CAPTION 0x0001 // Redraw Side#define RXRS_CROP_SLIDER 0x0002#define RXRS_ALL 0x000F#define MOVER_TIMER_BUTTON 1#define MOVER_TIMER_SLIDER 2typedef struct // caption color information{ COLORREF crFace; COLORREF crLight; COLORREF crHiLight; COLORREF crShadow; COLORREF crText;} CAP_COLOR;typedef struct{ CString strText; POINT ptPoint[4];} RX_CAPTAB;typedef struct{ UINT nID; UINT nBmpID; WORD wStatus;} RX_CAPBUTTON;class RxFMWnd : public CWnd{// Constructionpublic: RxFMWnd(); RxFMWnd(UINT nSeries);// Attributespublic: DWORD m_dwRxStyle; UINT m_nSeries; int m_nMsgTab, m_nCurTab; BOOL m_bTabFixed; // current tab狼 盎脚 咯何 BOOL m_bTabVisible; // tab阑 焊捞绰瘤 caption text甫 焊捞绰瘤 CPtrArray m_ArrayTab; // tab structure array CPtrArray m_ArrayButton; int m_nMouseOverButton; BOOL m_bSliderShow; BOOL m_bSliderVert; int m_nRangeMin, m_nRangeMax; int m_nMinPo, m_nMaxPo; int m_nMinPi, m_nMaxPi; int m_nMouseOverSlider; int m_nMouseCheckSlider;// Operationspublic: int CreateRx(DWORD dwStyle, DWORD dwRxStyle, const RECT &rect, CWnd *pParentWnd, UINT nID); void RedrawNCWnd (WORD wSide = RXRS_ALL); void DrawCaption (CDC *pDC, CRect rect); void DrawTab (CDC *pDC, BOOL bActive, RX_CAPTAB *_tabCaption, CAP_COLOR *_crCaption); void DrawButton (CDC *pDC, CPoint point, RX_CAPBUTTON *_btnCaption); void DrawSlider (CDC *pDC, CRect rect); int HitTest_Tab (CPoint point); int HitTest_Button(CPoint point); int HitTest_Slider(CPoint point); ///////////////////////////////////////////////////////////////////////// void AddTab (LPCTSTR lpszText); int GetTabCount (); RX_CAPTAB* GetTab (int nIndex); void RemoveAllTab(); void SetCurTab (int nIndex, BOOL bRedraw = TRUE); int GetCurTab (); int GetMsgTab (); void SetTabVisible(BOOL bShow, BOOL bRedraw = TRUE); BOOL GetTabVisible(); void SetTabFixed (BOOL bFixed); ///////////////////////////////////////////////////////////////////////// void AddButton (UINT nID, UINT nBmpID, WORD wStatus); int GetButtonCount(); RX_CAPBUTTON* GetButton(UINT nID); void RemoveAllButton(); void SetBtnCheck(UINT nID, BOOL bCheck, BOOL bRedraw = TRUE); BOOL GetBtnCheck(UINT nID); void SetBtnEnable(UINT nID, BOOL bEnable, BOOL bRedraw= TRUE); BOOL GetBtnEnable(UINT nID); void SetBtnVisible(UINT nID, BOOL bShow, BOOL bRedraw = TRUE); BOOL GetBtnVisible(UINT nID); ///////////////////////////////////////////////////////////////////////// int PiToPo(int nPixel, int nRangeMinPi, int nRangeMaxPi); int PoToPi(int nPos, int nRangeMinPi, int nRangeMaxPi); void UpdateSlider(int nIndex = -1); void ShowSlider(BOOL bShow); void SetSliderRange(int nRangeMin, int nRangeMax); void SetSliderPos(int nPosMin, int nPosMax, BOOL bRedraw); void GetSliderPos(int &nPosMin, int &nPosMax); void SetSliderMin(int nPosMin, BOOL bRedraw); int GetSliderMin(); void SetSliderMax(int nPosMax, BOOL bRedraw); int GetSliderMax();// Overrides // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(RxFMWnd) protected: virtual void PostNcDestroy(); //}}AFX_VIRTUAL// Implementationpublic: virtual ~RxFMWnd(); virtual void OnActivateWnd(BOOL bActivate, CWnd *pCurWnd, CWnd *pOldWnd); // Generated message map functionsprotected: //{{AFX_MSG(RxFMWnd) afx_msg int OnCreate(LPCREATESTRUCT lpCreateStruct); afx_msg void OnNcCalcSize(BOOL bCalcValidRects, NCCALCSIZE_PARAMS FAR* lpncsp); afx_msg int OnMouseActivate(CWnd* pDesktopWnd, UINT nHitTest, UINT message); afx_msg void OnDestroy(); afx_msg void OnNcPaint(); afx_msg void OnNcLButtonDown(UINT nHitTest, CPoint point); afx_msg void OnNcLButtonUp(UINT nHitTest, CPoint point); afx_msg void OnNcMouseMove(UINT nHitTest, CPoint point); afx_msg void OnTimer(UINT nIDEvent); afx_msg UINT OnNcHitTest(CPoint point); afx_msg void OnSize(UINT nType, int cx, int cy); //}}AFX_MSG DECLARE_MESSAGE_MAP()};///////////////////////////////////////////////////////////////////////////////{{AFX_INSERT_LOCATION}}// Microsoft Visual C++ will insert additional declarations immediately before the previous line.#endif // !defined(AFX_FMWND_H__A1769377_C632_4542_99A3_C771447D761C__INCLUDED_)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -