亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? btnst.h

?? 不說了
?? H
字號:
//
//	Class:		CButtonST
//
//	Compiler:	Visual C++
//	Tested on:	Visual C++ 5.0
//				Visual C++ 6.0
//
//	Version:	See GetVersionC() or GetVersionI()
//
//	Created:	xx/xxxx/1998
//	Updated:	22/July/2002
//
//	Author:		Davide Calabro'		davide_calabro@yahoo.com
//									http://www.softechsoftware.it
//
//	Note:		Code for the PreSubclassWindow and OnSetStyle functions
//				has been taken from the COddButton class
//				published by Paolo Messina and Jerzy Kaczorowski
//
//	Disclaimer
//	----------
//	THIS SOFTWARE AND THE ACCOMPANYING FILES ARE DISTRIBUTED "AS IS" AND WITHOUT
//	ANY WARRANTIES WHETHER EXPRESSED OR IMPLIED. NO REPONSIBILITIES FOR POSSIBLE
//	DAMAGES OR EVEN FUNCTIONALITY CAN BE TAKEN. THE USER MUST ASSUME THE ENTIRE
//	RISK OF USING THIS SOFTWARE.
//
//	Terms of use
//	------------
//	THIS SOFTWARE IS FREE FOR PERSONAL USE OR FREEWARE APPLICATIONS.
//	IF YOU USE THIS SOFTWARE IN COMMERCIAL OR SHAREWARE APPLICATIONS YOU
//	ARE GENTLY ASKED TO DONATE 1$ (ONE U.S. DOLLAR) TO THE AUTHOR:
//
//		Davide Calabro'
//		P.O. Box 65
//		21019 Somma Lombardo (VA)
//		Italy
//
#ifndef _BTNST_H
#define _BTNST_H

// Uncomment the following 2 lines to enable support for BCMenu class
#define	BTNST_USE_BCMENU
#include "BCMenu.h"

// Uncomment the following line to enable support for sound effects
#define	BTNST_USE_SOUND

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000

// Return values
#ifndef	BTNST_OK
#define	BTNST_OK						0
#endif
#ifndef	BTNST_INVALIDRESOURCE
#define	BTNST_INVALIDRESOURCE			1
#endif
#ifndef	BTNST_FAILEDMASK
#define	BTNST_FAILEDMASK				2
#endif
#ifndef	BTNST_INVALIDINDEX
#define	BTNST_INVALIDINDEX				3
#endif
#ifndef	BTNST_INVALIDALIGN
#define	BTNST_INVALIDALIGN				4
#endif
#ifndef	BTNST_BADPARAM
#define	BTNST_BADPARAM					5
#endif
#ifndef	BTNST_INVALIDPRESSEDSTYLE
#define	BTNST_INVALIDPRESSEDSTYLE		6
#endif

// Dummy identifier for grayscale icon
#ifndef	BTNST_AUTO_GRAY
#define	BTNST_AUTO_GRAY					(HICON)(0xffffffff - 1L)
#endif

class CButtonST : public CButton
{
public:
    CButtonST();
	~CButtonST();

    enum	{	ST_ALIGN_HORIZ	= 0,			// Icon/bitmap on the left, text on the right
				ST_ALIGN_VERT,					// Icon/bitmap on the top, text on the bottom
				ST_ALIGN_HORIZ_RIGHT,			// Icon/bitmap on the right, text on the left
				ST_ALIGN_OVERLAP				// Icon/bitmap on the same space as text
			};

	enum	{	BTNST_COLOR_BK_IN	= 0,		// Background color when mouse is INside
				BTNST_COLOR_FG_IN,				// Text color when mouse is INside
				BTNST_COLOR_BK_OUT,				// Background color when mouse is OUTside
				BTNST_COLOR_FG_OUT,				// Text color when mouse is OUTside
				BTNST_COLOR_BK_FOCUS,			// Background color when the button is focused
				BTNST_COLOR_FG_FOCUS,			// Text color when the button is focused

				BTNST_MAX_COLORS
			};

    enum	{	BTNST_PRESSED_LEFTRIGHT = 0,	// Pressed style from left to right (as usual)
				BTNST_PRESSED_TOPBOTTOM			// Pressed style from top to bottom
			};

	// ClassWizard generated virtual function overrides
    //{{AFX_VIRTUAL(CButtonST)
	public:
	virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
	virtual BOOL PreTranslateMessage(MSG* pMsg);
	protected:
	virtual void PreSubclassWindow();
	//}}AFX_VIRTUAL

public:
	DWORD SetDefaultColors(BOOL bRepaint = TRUE);
	DWORD SetColor(BYTE byColorIndex, COLORREF crColor, BOOL bRepaint = TRUE);
	DWORD GetColor(BYTE byColorIndex, COLORREF* crpColor);
	DWORD OffsetColor(BYTE byColorIndex, short shOffset, BOOL bRepaint = TRUE);

	DWORD SetCheck(int nCheck, BOOL bRepaint = TRUE);
	int GetCheck();

	DWORD SetURL(LPCTSTR lpszURL = NULL);
	void DrawTransparent(BOOL bRepaint = FALSE);
	DWORD SetBk(CDC* pDC);

	BOOL GetDefault();
	DWORD SetAlwaysTrack(BOOL bAlwaysTrack = TRUE);

	void SetTooltipText(int nText, BOOL bActivate = TRUE);
	void SetTooltipText(LPCTSTR lpszText, BOOL bActivate = TRUE);
	void ActivateTooltip(BOOL bEnable = TRUE);

	DWORD SetBtnCursor(int nCursorId = NULL, BOOL bRepaint = TRUE);

	DWORD SetFlat(BOOL bFlat = TRUE, BOOL bRepaint = TRUE);
	DWORD SetAlign(BYTE byAlign, BOOL bRepaint = TRUE);
	DWORD SetPressedStyle(BYTE byStyle, BOOL bRepaint = TRUE);

	DWORD DrawBorder(BOOL bDrawBorder = TRUE, BOOL bRepaint = TRUE);
	DWORD DrawFlatFocus(BOOL bDrawFlatFocus, BOOL bRepaint = TRUE);

	DWORD SetIcon(int nIconIn, int nIconOut = NULL);
	DWORD SetIcon(HICON hIconIn, HICON hIconOut = NULL);

	DWORD SetBitmaps(int nBitmapIn, COLORREF crTransColorIn, int nBitmapOut = NULL, COLORREF crTransColorOut = 0);
	DWORD SetBitmaps(HBITMAP hBitmapIn, COLORREF crTransColorIn, HBITMAP hBitmapOut = NULL, COLORREF crTransColorOut = 0);

	void SizeToContent();

#ifdef	BTNST_USE_BCMENU
	DWORD SetMenu(UINT nMenu, HWND hParentWnd, BOOL bWinXPStyle = TRUE, UINT nToolbarID = NULL, CSize sizeToolbarIcon = CSize(16, 16), COLORREF crToolbarBk = RGB(255, 0, 255), BOOL bRepaint = TRUE);
#else
	DWORD SetMenu(UINT nMenu, HWND hParentWnd, BOOL bRepaint = TRUE);
#endif
	DWORD SetMenuCallback(HWND hWnd, UINT nMessage, LPARAM lParam = 0);

#ifdef	BTNST_USE_SOUND
	DWORD SetSound(LPCTSTR lpszSound, HMODULE hMod = NULL, BOOL bPlayOnClick = FALSE, BOOL bPlayAsync = TRUE);
#endif

	static short GetVersionI()		{return 37;}
	static LPCTSTR GetVersionC()	{return (LPCTSTR)_T("3.7");}

	BOOL	m_bShowDisabledBitmap;
	POINT	m_ptImageOrg;
	POINT	m_ptPressedOffset;

protected:
    //{{AFX_MSG(CButtonST)
	afx_msg BOOL OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message);
	afx_msg void OnKillFocus(CWnd* pNewWnd);
	afx_msg void OnMouseMove(UINT nFlags, CPoint point);
	afx_msg void OnSysColorChange();
	afx_msg BOOL OnClicked();
	afx_msg void OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized);
	afx_msg void OnEnable(BOOL bEnable);
	afx_msg void OnCancelMode();
	afx_msg UINT OnGetDlgCode();
	//}}AFX_MSG

#ifdef	BTNST_USE_BCMENU
	afx_msg LRESULT OnMenuChar(UINT nChar, UINT nFlags, CMenu* pMenu);
	afx_msg void OnMeasureItem(int nIDCtl, LPMEASUREITEMSTRUCT lpMeasureItemStruct);
#endif

	afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor);
	HICON CreateGrayscaleIcon(HICON hIcon);
	virtual DWORD OnDrawBackground(CDC* pDC, LPCRECT pRect);
	virtual DWORD OnDrawBorder(CDC* pDC, LPCRECT pRect);

	BOOL		m_bIsFlat;			// Is a flat button?
	BOOL		m_bMouseOnButton;	// Is mouse over the button?
	BOOL		m_bDrawTransparent;	// Draw transparent?
	BOOL		m_bIsPressed;		// Is button pressed?
	BOOL		m_bIsFocused;		// Is button focused?
	BOOL		m_bIsDisabled;		// Is button disabled?
	BOOL		m_bIsDefault;		// Is default button?
	BOOL		m_bIsCheckBox;		// Is the button a checkbox?
	BYTE		m_byAlign;			// Align mode
	BOOL		m_bDrawBorder;		// Draw border?
	BOOL		m_bDrawFlatFocus;	// Draw focus rectangle for flat button?
	COLORREF	m_crColors[BTNST_MAX_COLORS];	// Colors to be used
	HWND		m_hParentWndMenu;	// Handle to window for menu selection
	BOOL		m_bMenuDisplayed;	// Is menu displayed ?

#ifdef	BTNST_USE_BCMENU
	BCMenu		m_menuPopup;		// BCMenu class instance
#else
	HMENU		m_hMenu;			// Handle to associated menu
#endif

private:
	LRESULT OnSetCheck(WPARAM wParam, LPARAM lParam);
	LRESULT OnGetCheck(WPARAM wParam, LPARAM lParam);
	LRESULT OnSetStyle(WPARAM wParam, LPARAM lParam);
	LRESULT OnMouseLeave(WPARAM wParam, LPARAM lParam);

	void CancelHover();
	void FreeResources(BOOL bCheckForNULL = TRUE);
	void PrepareImageRect(BOOL bHasTitle, RECT* rpItem, CRect* rpTitle, BOOL bIsPressed, DWORD dwWidth, DWORD dwHeight, CRect* rpImage);
	HBITMAP CreateBitmapMask(HBITMAP hSourceBitmap, DWORD dwWidth, DWORD dwHeight, COLORREF crTransColor);
	virtual void DrawTheIcon(CDC* pDC, BOOL bHasTitle, RECT* rpItem, CRect* rpCaption, BOOL bIsPressed, BOOL bIsDisabled);
	virtual void DrawTheBitmap(CDC* pDC, BOOL bHasTitle, RECT* rpItem, CRect* rpCaption, BOOL bIsPressed, BOOL bIsDisabled);
	virtual void DrawTheText(CDC* pDC, LPCTSTR lpszText, RECT* rpItem, CRect* rpCaption, BOOL bIsPressed, BOOL bIsDisabled);
	void PaintBk(CDC* pDC);

	void InitToolTip();

	HCURSOR		m_hCursor;			// Handle to cursor
	CToolTipCtrl m_ToolTip;			// Tooltip

	CDC			m_dcBk;
	CBitmap		m_bmpBk;
	CBitmap*	m_pbmpOldBk;

	BOOL		m_bAlwaysTrack;		// Always hilight button?
	int			m_nCheck;			// Current value for checkbox
	UINT		m_nTypeStyle;		// Button style

	TCHAR		m_szURL[_MAX_PATH];	// URL to open when clicked

#pragma pack(1)
	typedef struct _STRUCT_ICONS
	{
		HICON		hIcon;			// Handle to icon
		DWORD		dwWidth;		// Width of icon
		DWORD		dwHeight;		// Height of icon
	} STRUCT_ICONS;
#pragma pack()

#pragma pack(1)
	typedef struct _STRUCT_BITMAPS
	{
		HBITMAP		hBitmap;		// Handle to bitmap
		DWORD		dwWidth;		// Width of bitmap
		DWORD		dwHeight;		// Height of bitmap
		HBITMAP		hMask;			// Handle to mask bitmap
		COLORREF	crTransparent;	// Transparent color
	} STRUCT_BITMAPS;
#pragma pack()

#pragma pack(1)
	typedef struct _STRUCT_CALLBACK
	{
		HWND		hWnd;			// Handle to window
		UINT		nMessage;		// Message identifier
		WPARAM		wParam;
		LPARAM		lParam;
	} STRUCT_CALLBACK;
#pragma pack()

	STRUCT_ICONS	m_csIcons[2];
	STRUCT_BITMAPS	m_csBitmaps[2];

	STRUCT_CALLBACK	m_csCallbacks;

#ifdef	BTNST_USE_SOUND
#pragma pack(1)
	typedef struct _STRUCT_SOUND
	{
		TCHAR		szSound[_MAX_PATH];
		LPCTSTR		lpszSound;
		HMODULE		hMod;
		DWORD		dwFlags;
	} STRUCT_SOUND;
#pragma pack()

	STRUCT_SOUND	m_csSounds[2];	// Index 0 = Over	1 = Clicked
#endif

	DECLARE_MESSAGE_MAP()
};

//{{AFX_INSERT_LOCATION}}
// Microsoft Developer Studio will insert additional declarations immediately before the previous line.

#endif

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产免费成人在线视频| 国产日产欧产精品推荐色 | 日韩精品乱码av一区二区| 亚洲日本在线天堂| 亚洲日本在线观看| 亚洲一区二区四区蜜桃| 亚洲妇熟xx妇色黄| 奇米影视在线99精品| 日韩激情一二三区| 久久99精品久久久久| 精品一区二区在线观看| 国产一区二区三区精品欧美日韩一区二区三区 | 亚洲精品欧美在线| 亚洲自拍偷拍欧美| 裸体一区二区三区| 国产精品99久久久| 色女孩综合影院| 欧美日韩国产小视频在线观看| 欧美一区二区在线视频| 26uuu国产电影一区二区| 中文字幕不卡一区| 亚洲r级在线视频| 国产一区二区影院| 99re成人精品视频| 在线播放欧美女士性生活| 久久综合九色欧美综合狠狠 | 亚洲成人777| 美女www一区二区| 99久久精品99国产精品| 欧美乱熟臀69xxxxxx| 2022国产精品视频| 一区二区三区免费在线观看| 久久99精品视频| 91丨porny丨最新| 日韩午夜精品视频| 亚洲人精品午夜| 麻豆91在线观看| 91福利精品视频| 久久这里都是精品| 偷拍日韩校园综合在线| 成人免费高清在线观看| 日韩一区和二区| 1024成人网| 久久69国产一区二区蜜臀| 色综合欧美在线| 久久蜜桃香蕉精品一区二区三区| 一区二区三区免费在线观看| 国产精品18久久久久久久久 | 91亚洲精品久久久蜜桃| 精品国产网站在线观看| 一区二区三区中文免费| 国产91精品露脸国语对白| 日韩丝袜情趣美女图片| 亚洲国产成人av网| 91最新地址在线播放| 久久久五月婷婷| 视频一区二区国产| 欧美性色欧美a在线播放| 国产精品久久久久aaaa| 国产suv精品一区二区三区| 日韩精品一区二区三区三区免费| 亚洲无人区一区| 欧美日韩高清影院| 亚洲成人综合网站| 一区二区三区在线观看动漫| 激情五月激情综合网| 国产精品入口麻豆九色| 91蜜桃网址入口| 青青青爽久久午夜综合久久午夜 | 欧美日韩不卡一区| 精品亚洲欧美一区| 亚洲女同ⅹxx女同tv| 日韩欧美国产不卡| 色婷婷亚洲一区二区三区| 日本三级韩国三级欧美三级| 国产日韩欧美不卡在线| 欧美体内she精视频| 国产酒店精品激情| 亚洲电影你懂得| 国产精品久久久久四虎| 日韩欧美国产三级电影视频| 91免费国产在线| 国产老肥熟一区二区三区| 午夜精品久久久久久久99樱桃| 国产日产亚洲精品系列| 日韩欧美一级精品久久| 91福利在线播放| 成人黄色免费短视频| 久久精品国产一区二区三区免费看 | 欧美日韩精品是欧美日韩精品| 国产成人av资源| 极品尤物av久久免费看| 五月天亚洲精品| 一区二区视频在线| 亚洲国产精品激情在线观看| 精品免费国产二区三区 | 国产午夜精品久久久久久免费视 | 91福利资源站| 97久久精品人人澡人人爽| 韩国成人在线视频| 久久草av在线| 男男视频亚洲欧美| 五月婷婷久久丁香| 午夜影院久久久| 亚洲大片在线观看| 亚洲永久精品大片| 亚洲一二三区不卡| 亚洲免费毛片网站| 日韩毛片在线免费观看| 日韩一区在线免费观看| 日韩久久一区二区| 中文字幕亚洲在| 日韩一区在线免费观看| 亚洲天堂中文字幕| 一区二区激情视频| 夜夜精品浪潮av一区二区三区| 亚洲欧美成人一区二区三区| 亚洲色欲色欲www| 樱花影视一区二区| 亚洲一二三区视频在线观看| 亚洲成人三级小说| 欧美96一区二区免费视频| 美女网站一区二区| 国产一区二区三区四区五区美女| 国产最新精品精品你懂的| 国产一区二三区好的| 成人久久视频在线观看| 色综合久久综合中文综合网| 欧美这里有精品| 5月丁香婷婷综合| wwwwxxxxx欧美| 国产精品网站导航| 亚洲一区二区视频| 蜜桃一区二区三区四区| 国产麻豆成人精品| 91在线一区二区三区| 欧美喷水一区二区| 精品处破学生在线二十三| 欧美国产激情一区二区三区蜜月| 中文字幕一区二区三区在线观看| 一级特黄大欧美久久久| 日韩av电影天堂| 国产麻豆精品视频| 99精品在线免费| 欧美一区二区国产| 亚洲国产成人在线| 亚洲成在人线免费| 国产另类ts人妖一区二区| 日本韩国欧美一区| 欧美刺激脚交jootjob| 国产精品三级av在线播放| 亚洲不卡av一区二区三区| 国产美女视频一区| 欧美日韩黄色一区二区| 久久中文娱乐网| 亚洲午夜一区二区| 国产成人av影院| 欧美精品aⅴ在线视频| 日本一区二区三区免费乱视频| 亚洲va天堂va国产va久| 岛国一区二区在线观看| 欧美精品免费视频| 中文字幕一区二区三区在线播放 | 欧美成人高清电影在线| 综合久久综合久久| 国产一区二区三区在线观看免费 | 中文字幕在线不卡一区二区三区| 日韩av中文在线观看| 99国产精品久久久久| 2019国产精品| 日韩精品视频网站| 欧美自拍偷拍午夜视频| 国产精品网站在线观看| 精品制服美女久久| 69堂成人精品免费视频| 亚洲男人的天堂网| 成人毛片在线观看| 欧美精品一区二区三区在线播放| 亚洲一卡二卡三卡四卡 | 夜夜爽夜夜爽精品视频| 波多野结衣亚洲一区| 久久久www成人免费毛片麻豆| 天天色 色综合| 欧美吻胸吃奶大尺度电影| 亚洲女厕所小便bbb| 91美女在线观看| 国产精品国产三级国产| 粉嫩欧美一区二区三区高清影视 | 粉嫩av一区二区三区在线播放| 日韩免费视频一区二区| 蜜桃久久久久久久| 91麻豆精品久久久久蜜臀| 亚洲成精国产精品女| 日本电影亚洲天堂一区| 亚洲婷婷国产精品电影人久久| 成人激情文学综合网| 中文字幕一区二区三| 99国产精品99久久久久久| 亚洲欧美区自拍先锋| 色久综合一二码|