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

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

?? btnst.h

?? 近期購買了“VC++深入詳解”一書
?? H
字號:
//
//	Class:		CButtonST
//
//	Compiler:	Visual C++
//	Tested on:	Visual C++ 5.0
//
//	Version:	See GetVersionC() or GetVersionI()
//
//	Created:	xx/xxxx/1998
//	Updated:	19/September/1999
//
//	Author:		Davide Calabro'		davide_calabro@yahoo.com
//
#ifndef _BTNST_H
#define _BTNST_H

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

// CBtnST.h : header file
//

// Comment this if you don't want that CButtonST hilights itself
// also when the window is inactive (like happens in Internet Explorer)
//#define ST_LIKEIE

// Comment this if you don't want to use CMemDC class
//#define ST_USE_MEMDC

/////////////////////////////////////////////////////////////////////////////
// CButtonST window

class CButtonST : public CButton
{
// Construction
public:
    CButtonST();
	~CButtonST();
    enum {ST_ALIGN_HORIZ, ST_ALIGN_VERT, ST_ALIGN_HORIZ_RIGHT};

// Attributes
public:

// Operations
public:

// Overrides
	// ClassWizard generated virtual function overrides
    //{{AFX_VIRTUAL(CButtonST)
	public:
	virtual void DrawItem(LPDRAWITEMSTRUCT lpDrawItemStruct);
	virtual BOOL PreTranslateMessage(MSG* pMsg);
	protected:
	virtual void PreSubclassWindow();
	virtual LRESULT DefWindowProc(UINT message, WPARAM wParam, LPARAM lParam);
	//}}AFX_VIRTUAL

// Implementation
public:
	void DrawTransparent(BOOL bRepaint = FALSE);

	BOOL GetDefault();

	void SetTooltipText(int nId, BOOL bActivate = TRUE);
	void SetTooltipText(CString* spText, BOOL bActivate = TRUE);
	void ActivateTooltip(BOOL bEnable = TRUE);

	BOOL SetBtnCursor(int nCursorId = -1);

	void SetFlatFocus(BOOL bDrawFlatFocus, BOOL bRepaint = FALSE);
	BOOL GetFlatFocus();

	void SetDefaultActiveFgColor(BOOL bRepaint = FALSE);
	void SetActiveFgColor(COLORREF crNew, BOOL bRepaint = FALSE);
	const COLORREF GetActiveFgColor();
	
	void SetDefaultActiveBgColor(BOOL bRepaint = FALSE);
	void SetActiveBgColor(COLORREF crNew, BOOL bRepaint = FALSE);
	const COLORREF GetActiveBgColor();
	
	void SetDefaultInactiveFgColor(BOOL bRepaint = FALSE);
	void SetInactiveFgColor(COLORREF crNew, BOOL bRepaint = FALSE);
	const COLORREF GetInactiveFgColor();

	void SetDefaultInactiveBgColor(BOOL bRepaint = FALSE);
	void SetInactiveBgColor(COLORREF crNew, BOOL bRepaint = FALSE);
	const COLORREF GetInactiveBgColor();

	void SetShowText(BOOL bShow = TRUE);
	BOOL GetShowText();

	void SetAlign(int nAlign);
	int GetAlign();

	void SetFlat(BOOL bState = TRUE);
	BOOL GetFlat();

	void DrawBorder(BOOL bEnable = TRUE);
	void SetIcon(int nIconInId, int nIconOutId = NULL);
	void SetIcon(HICON hIconIn, HICON hIconOut = NULL);

	static const short GetVersionI();
	static const char* GetVersionC();

protected:
    //{{AFX_MSG(CButtonST)
	afx_msg void OnCaptureChanged(CWnd *pWnd);
	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

	afx_msg HBRUSH CtlColor(CDC* pDC, UINT nCtlColor);

	DECLARE_MESSAGE_MAP()
private:
	void DrawTheIcon(CDC* pDC, CString* title, RECT* rcItem, CRect* captionRect, BOOL IsPressed, BOOL IsDisabled);
	void InitToolTip();
	void PaintBk(CDC* pDC);

	int m_nAlign;
	BOOL m_bShowText;
	BOOL m_bDrawBorder;
	BOOL m_bIsFlat;
	BOOL m_MouseOnButton;
	BOOL m_bDrawFlatFocus;

	HCURSOR m_hCursor;
	CToolTipCtrl m_ToolTip;

	HICON m_hIconIn;
	HICON m_hIconOut;
	BYTE m_cyIcon;
	BYTE m_cxIcon;

	CDC m_dcBk;
	CBitmap m_bmpBk;
	CBitmap* m_pbmpOldBk;
	BOOL m_bDrawTransparent;

	BOOL m_bIsDefault;

	COLORREF  m_crInactiveBg;
    COLORREF  m_crInactiveFg;
    COLORREF  m_crActiveBg;
    COLORREF  m_crActiveFg;
};


#ifdef ST_USE_MEMDC
//////////////////////////////////////////////////
// CMemDC - memory DC
//
// Author: Keith Rule
// Email:  keithr@europa.com
// Copyright 1996-1997, Keith Rule
//
// You may freely use or modify this code provided this
// Copyright is included in all derived versions.
//
// History - 10/3/97 Fixed scrolling bug.
//                   Added print support.
//           25 feb 98 - fixed minor assertion bug
//
// This class implements a memory Device Context

class CMemDC : public CDC
{
public:

    // constructor sets up the memory DC
    CMemDC(CDC* pDC) : CDC()
    {
        ASSERT(pDC != NULL);

        m_pDC = pDC;
        m_pOldBitmap = NULL;
        m_bMemDC = !pDC->IsPrinting();
              
        if (m_bMemDC)    // Create a Memory DC
        {
            pDC->GetClipBox(&m_rect);
            CreateCompatibleDC(pDC);
            m_bitmap.CreateCompatibleBitmap(pDC, m_rect.Width(), m_rect.Height());
            m_pOldBitmap = SelectObject(&m_bitmap);
            SetWindowOrg(m_rect.left, m_rect.top);
        }
        else        // Make a copy of the relevent parts of the current DC for printing
        {
            m_bPrinting = pDC->m_bPrinting;
            m_hDC       = pDC->m_hDC;
            m_hAttribDC = pDC->m_hAttribDC;
        }
    }
    
    // Destructor copies the contents of the mem DC to the original DC
    ~CMemDC()
    {
        if (m_bMemDC) 
        {    
            // Copy the offscreen bitmap onto the screen.
            m_pDC->BitBlt(m_rect.left, m_rect.top, m_rect.Width(), m_rect.Height(),
                          this, m_rect.left, m_rect.top, SRCCOPY);

            //Swap back the original bitmap.
            SelectObject(m_pOldBitmap);
        } else {
            // All we need to do is replace the DC with an illegal value,
            // this keeps us from accidently deleting the handles associated with
            // the CDC that was passed to the constructor.
            m_hDC = m_hAttribDC = NULL;
        }
    }

    // Allow usage as a pointer
    CMemDC* operator->() {return this;}
        
    // Allow usage as a pointer
    operator CMemDC*() {return this;}

private:
    CBitmap  m_bitmap;      // Offscreen bitmap
    CBitmap* m_pOldBitmap;  // bitmap originally found in CMemDC
    CDC*     m_pDC;         // Saves CDC passed in constructor
    CRect    m_rect;        // Rectangle of drawing area.
    BOOL     m_bMemDC;      // TRUE if CDC really is a Memory DC.
};

#endif

/////////////////////////////////////////////////////////////////////////////

//{{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一区二区三区免费野_久草精品视频
久久午夜国产精品| 亚洲成人免费视频| 日韩一级黄色大片| 色婷婷精品大视频在线蜜桃视频 | 国产精品影视网| 强制捆绑调教一区二区| 国产三级欧美三级日产三级99| 欧美人xxxx| 欧美蜜桃一区二区三区| 欧美日韩一级视频| 欧美吞精做爰啪啪高潮| 色88888久久久久久影院野外| 国产成人精品免费网站| 国产伦精品一区二区三区免费迷| 奇米777欧美一区二区| 免费在线成人网| 国产在线不卡视频| 国产乱码精品一区二区三区忘忧草 | 美女网站色91| 精品一区二区三区视频在线观看 | 天堂在线一区二区| 午夜精品久久久| 日韩精品亚洲一区| 另类综合日韩欧美亚洲| 国产毛片精品视频| 波多野结衣欧美| 色天使色偷偷av一区二区| 欧美性三三影院| 欧美一级生活片| 欧美国产综合一区二区| 国产精品你懂的| 樱花草国产18久久久久| 亚洲国产中文字幕在线视频综合 | 日本道色综合久久| 337p亚洲精品色噜噜| 国产片一区二区| 午夜av区久久| 国产福利一区二区| 在线区一区二视频| 久久综合色一综合色88| 1024国产精品| 美女网站一区二区| 久久免费电影网| 亚洲一区二区三区小说| 九九**精品视频免费播放| 成人激情小说网站| 欧美精选在线播放| 久久色在线观看| 亚洲成人精品影院| 国产成人免费视频| 日韩一区二区三区免费观看| 亚洲精品视频一区| 北条麻妃一区二区三区| 日韩欧美一二区| 午夜亚洲福利老司机| 在线看国产一区二区| 国产精品灌醉下药二区| 国产精品一区二区免费不卡| 日韩欧美综合在线| 亚洲va韩国va欧美va| 色婷婷激情综合| 日韩美女视频一区二区| 久久99精品一区二区三区三区| 成人黄色网址在线观看| 精品福利二区三区| 激情综合色丁香一区二区| 欧美日韩精品电影| 日韩精品午夜视频| 久久亚洲一级片| 激情综合五月天| 国产欧美一区二区三区沐欲| 激情五月激情综合网| 欧美日韩电影在线播放| 热久久免费视频| 26uuu国产在线精品一区二区| 麻豆91免费观看| 久久综合九色综合欧美就去吻| 国产一区二区三区免费播放| 精品va天堂亚洲国产| 国产精品一线二线三线精华| 欧美精品久久一区| 蜜桃视频在线一区| 国产清纯在线一区二区www| 成人性生交大片免费看在线播放 | 亚洲人成伊人成综合网小说| 91性感美女视频| 亚洲一区影音先锋| 日韩女优毛片在线| 国产69精品久久99不卡| 日韩一区中文字幕| 91精品免费在线| aa级大片欧美| 首页欧美精品中文字幕| 一区二区三区不卡视频在线观看| 欧美性受xxxx黑人xyx性爽| 亚洲成人高清在线| 精品美女在线观看| 色婷婷久久综合| 国产一二三精品| 亚洲国产精品久久不卡毛片| 久久久久综合网| 精品污污网站免费看| 国产高清无密码一区二区三区| 亚洲日穴在线视频| 久久女同互慰一区二区三区| 欧美在线综合视频| 99国产精品视频免费观看| 久久精品国内一区二区三区| 亚洲男同1069视频| 中文子幕无线码一区tr| 欧美一级久久久| 色94色欧美sute亚洲线路二| 国产大片一区二区| 久久电影网电视剧免费观看| 亚洲精品中文在线影院| 久久综合国产精品| 欧美xxxxx裸体时装秀| 欧美日韩成人综合| 在线成人免费观看| 色欧美片视频在线观看在线视频| 高清不卡在线观看| 国产一本一道久久香蕉| 极品少妇xxxx精品少妇偷拍| 日本伊人色综合网| 蜜臀av性久久久久蜜臀av麻豆| 亚洲一区二区精品3399| 亚洲成年人影院| 五月婷婷综合网| 日韩国产精品久久| 另类小说欧美激情| 国产一区二区伦理片| 国产麻豆成人精品| 国产99一区视频免费| 国产sm精品调教视频网站| 国产成人精品一区二| 成人动漫在线一区| 日本伦理一区二区| 在线不卡免费av| 久久色.com| 亚洲欧美日韩在线不卡| 五月天一区二区三区| 蜜臀91精品一区二区三区| 激情综合网天天干| 972aa.com艺术欧美| 欧美日韩一区二区三区四区| 欧美另类变人与禽xxxxx| 精品粉嫩aⅴ一区二区三区四区| 国产亚洲精品精华液| 亚洲综合一区二区精品导航| 青青草国产精品亚洲专区无| 国产成人小视频| 欧美日韩第一区日日骚| 国产网站一区二区三区| 亚洲成年人网站在线观看| 玖玖九九国产精品| 91亚洲精华国产精华精华液| 日韩视频在线观看一区二区| 亚洲国产经典视频| 日韩不卡一区二区三区| 色综合天天综合网天天狠天天 | 国产精品18久久久久久久久久久久| av电影在线观看完整版一区二区| 色老汉一区二区三区| 26uuu亚洲| 麻豆精品新av中文字幕| 91精彩视频在线| 国产精品卡一卡二| 久久精品99久久久| 欧美日韩在线一区二区| 国产精品久久久久久亚洲伦| 喷水一区二区三区| 欧美一区二区免费视频| 夜色激情一区二区| 国产麻豆精品95视频| 欧美一个色资源| 日日噜噜夜夜狠狠视频欧美人| 99久久亚洲一区二区三区青草| 精品免费日韩av| 精品在线你懂的| 日韩一区二区免费电影| 香蕉久久夜色精品国产使用方法| 91麻豆精品一区二区三区| 国产精品免费视频网站| 国产高清在线观看免费不卡| 精品久久久久99| 国产精品一二三区| 国产日韩精品一区| 成人美女视频在线看| 国产精品美女久久久久av爽李琼| 国产福利精品一区| 国产欧美日韩精品一区| 北条麻妃国产九九精品视频| 亚洲人成精品久久久久| 在线观看亚洲精品视频| 午夜影视日本亚洲欧洲精品| 色综合天天综合网天天狠天天 | 久久香蕉国产线看观看99| 国产一区二区美女| 中文字幕一区二区三| 欧洲一区在线电影|