menuwndhook.h

来自「相当于一个C语言的编译器」· C头文件 代码 · 共 64 行

H
64
字号
/*########################################################################
	Filename: 	MenuWndHook.h
	----------------------------------------------------
	Remarks:	...
	----------------------------------------------------
	Author:		成真
	Email:		anyou@sina.com
				anyou@msn.com
	Created:	7/4/2003 17:37
  ########################################################################*/

#if !defined(_ANYOU_MENUWNDHOOK_H)
#define _ANYOU_MENUWNDHOOK_H

#if _MSC_VER > 1000
#pragma once
#endif 

#include <afxtempl.h>

/*########################################################################
			  ------------------------------------------------
							 CMenuWndHook 类
			  ------------------------------------------------
  ########################################################################*/
class CMenuWndHook
{
// 建构 ---------------------------------------------------------
public:
    CMenuWndHook(HWND hWnd);
	~CMenuWndHook();
	static void InstallHook();
	static void UnInstallHook();

// 消息 ----------------------------------------------------------
public:
	static LRESULT CALLBACK CoolMenuProc (HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam);
	static LRESULT CALLBACK WindowHook (int code, WPARAM wParam, LPARAM lParam);

	void OnNcCalcsize(NCCALCSIZE_PARAMS* lpncsp);
	void OnShowWindow(BOOL bShow);
	void OnNcDestroy();
	void OnPrint(CDC* pDC);
	void OnNcPaint();
	void OnWindowPosChanging(WINDOWPOS* pWindowPos);

// 操作 ----------------------------------------------------------
public:
	static CMenuWndHook* AddWndHook(HWND hwnd);
	static CMenuWndHook* GetWndHook(HWND hwnd);

// 数据 -----------------------------------------------------------
protected:
	HWND m_hWnd;
	CBitmap m_bmpBack;

	static CMap<HWND, HWND, CMenuWndHook*, CMenuWndHook*> m_WndMenuMap;
    static HHOOK m_hMenuHook;
public:
	static COLORREF m_crFrame[4];
};

#endif // !defined(_ANYOU_MENUWNDHOOK_H)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?