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

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? btnst.cpp

?? 專家系統(tǒng)-神經(jīng)網(wǎng)絡(luò)代碼
?? CPP
?? 第 1 頁(yè) / 共 2 頁(yè)
字號(hào):
// BtnST.cpp : implementation file
//

#include "stdafx.h"
#include "BtnST.h"
#include "MemDC.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

const int TOOLTIP_ID = 1;
/////////////////////////////////////////////////////////////////////////////
// CButtonST

CButtonST::CButtonST()
{
  m_MouseOnButton = FALSE;

  m_hIconIn = NULL;
  m_hIconOut = NULL;
  m_cxIcon = 0;
  m_cyIcon = 0;
  m_hCursor = NULL;
  
  // Default type is "flat" button
  m_bIsFlat = TRUE; 
  
  // By default draw border in "flat" button 
  m_bDrawBorder = TRUE; 
  
  // By default icon is aligned horizontally
  m_nAlign = ST_ALIGN_HORIZ; 
  
  // By default show the text button
  m_bShowText = TRUE; 
  
  // By default, for "flat" button, don't draw the focus rect
  m_bDrawFlatFocus = FALSE;

  // By default, the "flat" button, has a tip ""
  m_strToolTip.Empty();

  SetDefaultInactiveBgColor();
  SetDefaultInactiveFgColor();
  SetDefaultActiveBgColor();
  SetDefaultActiveFgColor();
} // End of CButtonST


CButtonST::~CButtonST()
{
	// Destroy the icons (if any)
	if (m_hIconIn != NULL) ::DeleteObject(m_hIconIn);
	if (m_hIconOut != NULL) ::DeleteObject(m_hIconOut);
	// Destroy the cursor (if any)
	if (m_hCursor != NULL) ::DestroyCursor(m_hCursor);
} // End of ~CButtonST


BEGIN_MESSAGE_MAP(CButtonST, CButton)
    //{{AFX_MSG_MAP(CButtonST)
	ON_WM_CAPTURECHANGED()
	ON_WM_SETCURSOR()
	ON_WM_KILLFOCUS()
	ON_WM_MOUSEMOVE()
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()


void CButtonST::SetIcon(int nIconInId, int nIconOutId, BYTE cx, BYTE cy)
{
	HINSTANCE hInstResource = AfxFindResourceHandle(MAKEINTRESOURCE(nIconInId),
													RT_GROUP_ICON);
	// Set icon when the mouse is IN the button
	m_hIconIn = (HICON)::LoadImage(hInstResource/*AfxGetApp()->m_hInstance*/, MAKEINTRESOURCE(nIconInId), IMAGE_ICON, 0, 0, 0);
  
	// Set icon when the mouse is OUT the button
	m_hIconOut = (nIconOutId == NULL) ? m_hIconIn : (HICON)::LoadImage(hInstResource/*AfxGetApp()->m_hInstance*/, MAKEINTRESOURCE(nIconOutId), IMAGE_ICON, 0, 0, 0);
  
	m_cxIcon = cx;
	m_cyIcon = cy;

	RedrawWindow();
} // End of SetIcon


BOOL CButtonST::SetBtnCursor(int nCursorId)
{
	HINSTANCE hInstResource;
	// Destroy any previous cursor
	if (m_hCursor != NULL) ::DestroyCursor(m_hCursor);
	m_hCursor = NULL;

	// If we want a cursor
	if (nCursorId != -1)
	{
		hInstResource = AfxFindResourceHandle(MAKEINTRESOURCE(nCursorId),
											RT_GROUP_CURSOR);
		// Load icon resource
		m_hCursor = (HCURSOR)::LoadImage(hInstResource/*AfxGetApp()->m_hInstance*/, MAKEINTRESOURCE(nCursorId), IMAGE_CURSOR, 0, 0, 0);
		// If something wrong then return FALSE
		if (m_hCursor == NULL) return FALSE;
	}

	return TRUE;
} // End of SetBtnCursor


void CButtonST::SetFlat(BOOL bState)
{
  m_bIsFlat = bState;
  Invalidate();
} // End of SetFlat


BOOL CButtonST::GetFlat()
{
  return m_bIsFlat;
} // End of GetFlat


void CButtonST::SetAlign(int nAlign)
{
  switch (nAlign)
  {    
    case ST_ALIGN_HORIZ:
         m_nAlign = ST_ALIGN_HORIZ;
         break;
    case ST_ALIGN_VERT:
         m_nAlign = ST_ALIGN_VERT;
         break;
  }
  Invalidate();
} // End of SetAlign


int CButtonST::GetAlign()
{
  return m_nAlign;
} // End of GetAlign


void CButtonST::DrawBorder(BOOL bEnable)
{
  m_bDrawBorder = bEnable;
} // End of DrawBorder


const char* CButtonST::GetVersionC()
{
  return "2.3";
} // End of GetVersionC


const short CButtonST::GetVersionI()
{
  return 23; // Divide by 10 to get actual version
} // End of GetVersionI


void CButtonST::SetShowText(BOOL bShow)
{
  m_bShowText = bShow;
  Invalidate();
} // End of SetShowText


BOOL CButtonST::GetShowText()
{
  return m_bShowText;
} // End of GetShowText


void CButtonST::OnMouseMove(UINT nFlags, CPoint point)
{
  CWnd* pWnd;  // Finestra attiva
  CWnd* pParent; // Finestra che contiene il bottone

  CButton::OnMouseMove(nFlags, point);

  // If the mouse enter the button with the left button pressed
  // then do nothing
  if (nFlags & MK_LBUTTON && m_MouseOnButton == FALSE) return;

  // If our button is not flat then do nothing
  if (m_bIsFlat == FALSE) return;

  pWnd = GetActiveWindow();
  pParent = GetOwner();

	if ((GetCapture() != this) && 
		(
#ifndef ST_LIKEIE
		pWnd != NULL && 
#endif
		pParent != NULL)) 
	{
		m_MouseOnButton = TRUE;
		//SetFocus();	// Thanks Ralph!
		SetCapture();
		Invalidate();
	}
	else
  {
    CRect rc;
    GetClientRect(&rc);
    if (!rc.PtInRect(point))
    {
      // Redraw only if mouse goes out
      if (m_MouseOnButton == TRUE)
      {
        m_MouseOnButton = FALSE;
        Invalidate();
      }
      // If user is NOT pressing left button then release capture!
      if (!(nFlags & MK_LBUTTON)) ReleaseCapture();
    }
  }
} // End of OnMouseMove


void CButtonST::OnKillFocus(CWnd * pNewWnd)
{
  CButton::OnKillFocus(pNewWnd);

  // If our button is not flat then do nothing
  if (m_bIsFlat == FALSE) return;

  if (m_MouseOnButton == TRUE)
  {
    m_MouseOnButton = FALSE;
    Invalidate();
  }
} // End of OnKillFocus


void CButtonST::OnCaptureChanged(CWnd *pWnd) 
{
	if (m_MouseOnButton == TRUE)
	{
		ReleaseCapture();
		Invalidate();
	}

	// Call base message handler
	CButton::OnCaptureChanged(pWnd);
} // End of OnCaptureChanged


void CButtonST::DrawItem(LPDRAWITEMSTRUCT lpDIS)
{
#ifdef ST_USE_MEMDC
  CDC  *pdrawDC = CDC::FromHandle(lpDIS->hDC);
  CMemDC memDC(pdrawDC);
  CDC  *pDC = &memDC;
#else	
  CDC* pDC = CDC::FromHandle(lpDIS->hDC);
#endif

  CPen *pOldPen;
  BOOL bIsPressed  = (lpDIS->itemState & ODS_SELECTED);
  BOOL bIsFocused  = (lpDIS->itemState & ODS_FOCUS);
  BOOL bIsDisabled = (lpDIS->itemState & ODS_DISABLED);

  CRect itemRect = lpDIS->rcItem;

  if (m_bIsFlat == FALSE)
  {
    if (bIsFocused)
    {
      CBrush br(RGB(0,0,0));  
      pDC->FrameRect(&itemRect, &br);
      itemRect.DeflateRect(1, 1);
    }
  }

  // Prepare draw... paint button's area with background color
  COLORREF bgColor;
  if ((m_MouseOnButton == TRUE) || (bIsPressed))
    bgColor = GetActiveBgColor();
  else
    bgColor = GetInactiveBgColor();

  CBrush br(bgColor);
  pDC->FillRect(&itemRect, &br);

	// Disegno lo sfondo del bottone
//CBrush br(GetSysColor(COLOR_BTNFACE));  
//pDC->FillRect(&itemRect, &br);

  // Draw pressed button
  if (bIsPressed)
  {
    if (m_bIsFlat == TRUE)
    {
      if (m_bDrawBorder == TRUE)
      {
	    CPen penBtnHiLight(PS_SOLID, 0, GetSysColor(COLOR_BTNHILIGHT)); // Bianco
        CPen penBtnShadow(PS_SOLID, 0, GetSysColor(COLOR_BTNSHADOW));   // Grigio scuro

        // Disegno i bordi a sinistra e in alto
        // Dark gray line
        pOldPen = pDC->SelectObject(&penBtnShadow);
        pDC->MoveTo(itemRect.left, itemRect.bottom-1);
        pDC->LineTo(itemRect.left, itemRect.top);
        pDC->LineTo(itemRect.right, itemRect.top);
        // Disegno i bordi a destra e in basso
        // White line
        pDC->SelectObject(penBtnHiLight);
        pDC->MoveTo(itemRect.left, itemRect.bottom-1);
        pDC->LineTo(itemRect.right-1, itemRect.bottom-1);
        pDC->LineTo(itemRect.right-1, itemRect.top-1);
        //
        pDC->SelectObject(pOldPen);
      }
    }

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美午夜精品免费| 国产一区二区免费在线| 日韩午夜中文字幕| 丁香婷婷综合网| 亚洲成人三级小说| 精品av久久707| 欧美视频第二页| 丁香六月综合激情| 日韩有码一区二区三区| 亚洲欧洲日韩av| 26uuu国产在线精品一区二区| 色综合久久中文综合久久97| 国产精品亚洲一区二区三区在线 | **欧美大码日韩| 日韩一区二区不卡| 在线视频观看一区| 成人综合婷婷国产精品久久| 久久精品久久精品| 亚洲制服欧美中文字幕中文字幕| 国产亚洲成av人在线观看导航| 欧美美女黄视频| 91论坛在线播放| 成人高清视频免费观看| 狠狠狠色丁香婷婷综合久久五月| 亚洲chinese男男1069| 亚洲欧美在线观看| 国产婷婷一区二区| 51精品秘密在线观看| 欧美偷拍一区二区| 91色在线porny| 99麻豆久久久国产精品免费优播| 国产一区二区影院| 久久不见久久见免费视频7| 午夜电影网一区| 亚洲线精品一区二区三区八戒| 亚洲欧洲99久久| 中文在线一区二区| 久久网这里都是精品| 精品国产污网站| 欧美不卡一区二区三区| 91精品免费观看| 91精品久久久久久久99蜜桃| 666欧美在线视频| 欧美久久久一区| 7777精品伊人久久久大香线蕉| 欧美体内she精视频| 欧美三片在线视频观看| 欧美视频第二页| 在线播放91灌醉迷j高跟美女| 欧美丰满美乳xxx高潮www| 91成人网在线| 欧美电影在哪看比较好| 日韩一二三区不卡| 欧美mv日韩mv| 国产亚洲精品超碰| 中文成人av在线| 亚洲免费在线视频一区 二区| 亚洲人成亚洲人成在线观看图片| 一区二区三区欧美视频| 亚洲国产欧美日韩另类综合| 丝袜美腿亚洲一区二区图片| 麻豆国产一区二区| 国产精品综合网| 91在线国内视频| 欧美日免费三级在线| 91精品免费在线观看| 亚洲精品一区二区三区蜜桃下载| 国产日产精品一区| 亚洲欧美在线观看| 视频一区视频二区中文字幕| 久久草av在线| 91亚洲国产成人精品一区二三| 欧美性猛交xxxxxx富婆| 欧美一区二区性放荡片| 久久精品视频网| 尤物在线观看一区| 免费久久99精品国产| 国产91色综合久久免费分享| 欧美专区在线观看一区| 欧美tickle裸体挠脚心vk| ...xxx性欧美| 捆绑紧缚一区二区三区视频| 99久久久精品| 日韩午夜在线播放| 亚洲视频一区二区在线观看| 另类小说一区二区三区| 91免费版在线看| 精品久久久久av影院 | 中文字幕不卡在线观看| 悠悠色在线精品| 久久97超碰色| 日本道精品一区二区三区| 精品欧美一区二区在线观看 | 精品中文字幕一区二区| 成人精品高清在线| 欧美日韩一区二区三区视频| 精品国产成人在线影院| 中文字幕亚洲在| 国产综合色精品一区二区三区| 91免费观看在线| 2019国产精品| 亚洲成年人影院| 成人一二三区视频| 6080国产精品一区二区| 国产精品久久精品日日| 寂寞少妇一区二区三区| 欧美在线观看一二区| 中文字幕的久久| 国产精品一区在线| 欧美高清激情brazzers| 亚洲欧洲日韩在线| 久久精品国产精品亚洲红杏| 一本色道久久综合精品竹菊| 久久久午夜精品| 日韩精品一卡二卡三卡四卡无卡| 91香蕉视频黄| 国产亚洲欧美在线| 日韩福利视频导航| 色哟哟欧美精品| 国产精品视频一二三区 | 国产一区二区三区最好精华液| 欧美性猛交xxxxxxxx| 亚洲色图欧洲色图| 丁香婷婷综合网| 国产欧美一区二区精品秋霞影院| 日本成人超碰在线观看| 欧美少妇bbb| 亚洲欧美另类久久久精品2019 | 制服丝袜中文字幕亚洲| 中文字幕一区视频| 激情文学综合插| 欧美电视剧免费全集观看 | 成人做爰69片免费看网站| 欧美tk丨vk视频| 精品一区二区免费在线观看| 日韩欧美一区电影| 亚洲福利视频三区| 欧美网站一区二区| 亚洲永久精品国产| 91官网在线观看| 一区二区三区不卡视频| 日本高清成人免费播放| 亚洲精选视频在线| 在线精品视频免费播放| 亚洲一区中文日韩| 欧美日韩另类一区| 丝袜亚洲另类欧美| 日韩欧美色综合网站| 精品一区二区三区免费观看| 久久一日本道色综合| 国产成人免费在线视频| 国产精品三级久久久久三级| 91一区一区三区| 亚洲制服丝袜av| 欧美一区二区二区| 韩国v欧美v日本v亚洲v| 国产女人aaa级久久久级| 成人免费高清视频在线观看| 亚洲人成网站在线| 欧美日韩免费电影| 精品在线免费观看| 久久久精品免费免费| 不卡的av中国片| 亚洲最新视频在线播放| 欧美日韩国产欧美日美国产精品| 日韩国产欧美三级| 日韩欧美黄色影院| 国产xxx精品视频大全| 亚洲视频在线观看三级| 欧美日韩国产系列| 国产一区二区三区不卡在线观看 | 99国内精品久久| 亚洲电影第三页| 久久综合中文字幕| 色欲综合视频天天天| 日本不卡一区二区三区 | 国产精品福利电影一区二区三区四区| 成人av资源在线观看| 亚洲一区二区三区四区在线 | 91麻豆.com| 日韩和的一区二区| 国产亚洲一区二区三区在线观看| av资源站一区| 日韩av中文在线观看| 国产欧美va欧美不卡在线| 欧美日韩亚洲另类| 国产在线麻豆精品观看| 亚洲品质自拍视频网站| 日韩一区二区免费在线观看| 99视频一区二区| 蜜臀va亚洲va欧美va天堂| 国产精品成人免费在线| 欧美一级在线免费| 99久久伊人精品| 肉色丝袜一区二区| 成人欧美一区二区三区黑人麻豆 | 一区二区三区欧美| 精品国产sm最大网站| 日本精品免费观看高清观看| 精品在线一区二区|