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

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

?? staticex.cxx

?? 一個農用車輛管理系統的雛形
?? CXX
字號:
/////////////////////////////////////////////////////////////////////////////
// StaticEx.cpp : implementation file
//
// Copyright (C) 1996 Bill Berry
// All rights reserved.
//
// This class is freely distributable as long as the copyright accompanies 
// the header and implementaion sources.
//
// Modification History:
//
// Bill Berry			November 1996			Created
//                      March    1998           Update
//
// March update now includes Paul DiLascia's code from MSJ which
// allows the control to be used as a web link.
//
// Description:
//
//  Extended CStatic class. Allows easy customization of the following:
//
//      1. COLORREF bkColor( COLORREF crColor )
//         - Sets back ground color of the control
//
//      2. COLORREF textColor( COLORREF crColor )
//         - Sets text or foreground color of the control
//
//      3. COLORREF bkColor() const
//         - Returns back ground color of control
//
//      4. COLORREF textColor() const
//         - Returns text (or foreground) color of control
//
//      5. void setFont( const LOGFONT* lpLogFont )
//         - Sets the font of the static control.
//
//      6. void onClickDoShellCommand( const CString& linkName )
//
//         (Note: the idea for this part of the control
//                came fom Paul DiLascia in the December issue
//                of MSJ )
//
//         - Use control as a link to open a link (this may
//           be an exe if you like...
//
//      7. COLORREF setLinkColorVisited( COLORREF crColor )
//         - Sets the visit color, returns previous setting
//
//      8. COLORREF setLinkColorUnvisited( COLORREF crColor )
//         - Sets the unvisited color, returns previous setting
//
//      *** Set new font for this control ***
//
//      9. void setFont( const LOGFONT* lpLogFont );
//  
//     10. void setFont( LONG fontHeight      = -8, 
//                       LONG fontWeight      = FW_NORMAL,
//                       UCHAR pitchAndFamily = DEFAULT_PITCH | FF_DONTCARE,
//                       LPCSTR faceName      = _T("MS Sans Serif"          
//                     );
//
#include "stdafx.h"
//#include "resource.h"
#include "LogFont.hxx"
#include "StaticEx.hxx"

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

/////////////////////////////////////////////////////////////////////////////
// CStaticEx

IMPLEMENT_DYNCREATE( CStaticEx, CStatic )

BEGIN_MESSAGE_MAP(CStaticEx, CStatic)
	//{{AFX_MSG_MAP(CStaticEx)
	//}}AFX_MSG_MAP
    ON_WM_SETCURSOR()
    ON_WM_CTLCOLOR_REFLECT()
    ON_CONTROL_REFLECT( STN_CLICKED, OnClicked )
END_MESSAGE_MAP()

CStaticEx::CStaticEx() 
{
    // Use system colors for defaults
    //
    m_crTextColor = ::GetSysColor( COLOR_WINDOWTEXT );
    m_crBkColor   = ::GetSysColor( COLOR_3DFACE     );

    m_crOnClickColor   = RGB( 0,  128, 192 );

    // The default brush type; SOLID
    //
    CreateBrushType();

    // Uses default font
    //
    m_pCFont = 0;

    // Link was not visited
    //
    m_didClickEvent = FALSE;

    // Set to popup a dialog when this control is clicked
    //
    m_dialog = 0;

    // Show a new window when this control is clicked
    //
    m_showThisCwnd = 0;
    m_sendMsgToThisCwnd = 0;

    // defines a message that may be sent to m_showThisCwnd
    //
    m_msg_flags  = 0;
    m_wm_message = 0;

    // Do use the hand cursor
    //
    m_doCustomCursor = false;
}

CStaticEx::~CStaticEx()
{
    //if ( m_pCFont )
		//delete m_pCFont;
}


// Note: Copy construction is blocked for this class.
//       This is because there would be no defined
//       m_hWnd during the construction of the object.
//
// CStaticEx::CStaticEx( const CStaticEx& o )
//

// Allow = operator to be used for copying basics.
//
CStaticEx& CStaticEx::operator = ( const CStaticEx& o )
{

    _ASSERT( o != *this ); // You probably did not mean to do this...

    if ( o == *this ) return *this; // copying self...
    
    m_shellCommandArg  = o.m_shellCommandArg;
    m_crOnClickColor   = o.m_crOnClickColor;

    bkColor( o.m_crBkColor );
    textColor( o.m_crTextColor );

    if ( o.m_pCFont ) {
         CLogFont pLogFont;
         o.m_pCFont->GetLogFont( &pLogFont );
         setFont( &pLogFont );
    }

    m_dialog            = o.m_dialog;
    m_showThisCwnd      = o.m_showThisCwnd;
    m_didClickEvent     = o.m_didClickEvent;
    m_sendMsgToThisCwnd = o.m_sendMsgToThisCwnd;
    m_msg_flags         = o.m_msg_flags;
    m_wm_message        = o.m_wm_message;
    m_doCustomCursor    = o.m_doCustomCursor;

    return *this;
}

/////////////////////////////////////////////////////////////////////////////
// CStaticEx message handlers

void CStaticEx::setFont( const LOGFONT* lpLogFont )
{
    _ASSERT( lpLogFont ); // logfont is not defined!!!

    if ( !lpLogFont ) return;

    if ( m_pCFont ) delete m_pCFont;
    
    m_pCFont = new CFont;
    m_pCFont->CreateFontIndirect( lpLogFont );

    SetFont( m_pCFont );
}

void CStaticEx::setFont( LONG fontHeight      /* = -8                         */, 
                         LONG fontWeight      /* = FW_NORMAL                  */,
                         UCHAR pitchAndFamily /* = DEFAULT_PITCH | FF_DONTCARE*/,
                         LPCSTR faceName      /* = _T("MS Sans Serif")        */ )
{
    if ( m_pCFont ) 
    {
        delete m_pCFont;
    }
    m_pCFont = new CFont;

    const CLogFont lf( fontHeight, 
                       FW_NORMAL,
                       pitchAndFamily,
                       faceName
                     );

    m_pCFont->CreateFontIndirect( &lf );

    SetFont( m_pCFont );
}

COLORREF CStaticEx::bkColor( COLORREF crColor )
{
    _ASSERT(::IsWindow(m_hWnd)); 

    COLORREF cr = m_crBkColor;
    
    m_crBkColor = crColor;
    
    m_brBkGround.DeleteObject();
    
    CreateBrushType();
    
    Invalidate();

    return cr;
}

COLORREF CStaticEx::textColor( COLORREF crColor )
{
    _ASSERT(::IsWindow(m_hWnd)); 
    
    COLORREF cr = m_crTextColor;
    
    m_crTextColor = crColor;
    
    Invalidate();
    
    return cr;
}

COLORREF CStaticEx::setLinkColorVisited( COLORREF crColor )
{
    COLORREF c  = m_crOnClickColor;
    m_crOnClickColor = crColor;
    return c;
}
COLORREF CStaticEx::setLinkColorUnvisited( COLORREF crColor )
{
    m_crTextColor = crColor;
    return textColor( crColor );
}


BOOL CStaticEx::CreateBrushType()
{
    return m_brBkGround.CreateSolidBrush( m_crBkColor );
}

void CStaticEx::onClickDoShellCommand( const CString& linkAddress /* = "bberry@javanet.com" */ )
{
    m_shellCommandArg  = linkAddress;
}



HBRUSH CStaticEx::CtlColor(CDC* pDC, UINT nCtlColor) 
{
    // Setup for receiving mouse input; we only turn it
    // on if it is needed...
    //
    if ( !m_shellCommandArg.IsEmpty() ) 
    {
         doOnClickEvents();
         pDC->SetTextColor( m_didClickEvent ? m_crOnClickColor : m_crTextColor );
    }
    else 
         pDC->SetTextColor( m_crTextColor );
  
    pDC->SetBkColor  ( m_crBkColor );

    return (HBRUSH)m_brBkGround;
}

void CStaticEx::OnClicked()
{
    if ( m_showThisCwnd )
    {
        if ( m_showThisCwnd->IsWindowVisible() )
             m_showThisCwnd->ShowWindow( SW_HIDE );
        else
             m_showThisCwnd->ShowWindow( SW_SHOW );
    }

    if ( m_dialog )
    {
         m_dialog->DoModal();         
    }

    if ( !m_shellCommandArg.IsEmpty() )
    {
         // Call ShellExecute to run the link...
         //
         HINSTANCE h = ShellExecute( 0, "open", m_shellCommandArg, 0, 0, SW_SHOWNORMAL );

         if ( (UINT)h > 32 ) {
              m_didClickEvent = TRUE;
              Invalidate();
         }
         else {
             MessageBeep(0);
             AfxMessageBox( "Unable to open " + m_shellCommandArg + '.', MB_OK | MB_ICONINFORMATION );
         }
    }

    if ( m_wm_message )
    {
        ::SendMessage( m_sendMsgToThisCwnd->m_hWnd, m_wm_message, m_msg_flags, 0 );
    }
}

BOOL CStaticEx::OnSetCursor( CWnd* pWnd, UINT nHitTest, UINT message )
{
    HCURSOR hCursor;

    if ( m_doCustomCursor ) 
    {
        hCursor = AfxGetApp()->LoadCursor( IDC_ARROW );
    }
    else
    {
        hCursor = AfxGetApp()->LoadStandardCursor( IDC_ARROW );
    }

    _ASSERT( hCursor );

    ::SetCursor( hCursor );

    return TRUE;
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜成人在线视频| 色综合天天综合色综合av| 国产福利91精品一区| 在线观看亚洲一区| 国产女人18毛片水真多成人如厕| 亚洲一区视频在线| eeuss鲁片一区二区三区| 日韩一级完整毛片| 亚洲午夜免费视频| 波多野结衣中文一区| 日韩精品中文字幕在线一区| 亚洲裸体在线观看| 国产高清在线精品| 欧美电视剧免费观看| 亚洲成人午夜电影| 日本精品免费观看高清观看| 久久久久99精品一区| 久久精品国产亚洲一区二区三区| 色拍拍在线精品视频8848| 国产精品色哟哟| 久久国产精品无码网站| 91精品国产福利在线观看| 亚洲精品高清在线| 99国产精品国产精品久久| 国产蜜臀av在线一区二区三区| 免费在线观看日韩欧美| 欧美日韩国产一级片| 伊人一区二区三区| 色老汉av一区二区三区| 中文字幕在线不卡一区二区三区| 福利一区福利二区| 久久午夜羞羞影院免费观看| 久久99久久精品欧美| 日韩女优毛片在线| 精品一区二区影视| 精品国产电影一区二区| 精品一区二区三区影院在线午夜| 日韩一级视频免费观看在线| 成人精品国产福利| 欧美激情一区二区三区蜜桃视频| 国产一区二区三区| 国产日产精品一区| 国产99久久精品| 国产精品成人一区二区三区夜夜夜| 成人美女视频在线看| 最新中文字幕一区二区三区| 色综合激情五月| 亚洲国产中文字幕| 日韩精品一区二| 国产精品99久久久久久似苏梦涵| 欧美激情一区二区在线| 91碰在线视频| 午夜影视日本亚洲欧洲精品| 日韩三级伦理片妻子的秘密按摩| 国产曰批免费观看久久久| 欧美国产成人精品| 色综合中文字幕国产 | 91丨porny丨在线| 一区二区三区四区在线免费观看| 欧美美女激情18p| 国产揄拍国内精品对白| 国产精品成人一区二区艾草| 欧美日韩国产一级二级| 国产综合色视频| 最新成人av在线| 欧美久久久久久久久中文字幕| 久久精品国产秦先生| 蜜臀99久久精品久久久久久软件| 欧美tk—视频vk| 一本色道久久综合亚洲aⅴ蜜桃| 五月天丁香久久| 国产女人18水真多18精品一级做 | 国产在线精品一区二区 | 精品国产伦一区二区三区免费| 国产91高潮流白浆在线麻豆 | 日本一区二区不卡视频| 欧美日韩一区二区电影| 国产精品一二三区在线| 亚洲综合激情小说| 久久免费看少妇高潮| 欧美视频你懂的| 国产伦理精品不卡| 亚洲超碰精品一区二区| 国产网站一区二区三区| 3atv一区二区三区| 不卡av电影在线播放| 激情图区综合网| 亚洲成va人在线观看| 国产精品三级在线观看| 欧美一区二区三区四区视频| 91视频一区二区三区| 国产麻豆精品视频| 婷婷综合在线观看| 亚洲日本成人在线观看| 久久久久久久免费视频了| 7777女厕盗摄久久久| 色94色欧美sute亚洲线路二| 国产伦精品一区二区三区在线观看 | 欧美日韩久久久久久| eeuss鲁片一区二区三区| 精品在线观看视频| 爽爽淫人综合网网站| 一色桃子久久精品亚洲| 2017欧美狠狠色| 欧美一区二区三区在| 欧美日韩国产美| 欧美性一区二区| 欧美综合天天夜夜久久| 色综合天天综合给合国产| 成人av电影在线| 成人禁用看黄a在线| 成人网在线免费视频| 国产精品一二三四| 高清不卡一区二区在线| 处破女av一区二区| 国产v日产∨综合v精品视频| 国产美女av一区二区三区| 久久爱www久久做| 韩国av一区二区| 国产一区二区三区四区五区美女| 久久99精品一区二区三区 | 亚洲影视在线观看| 洋洋av久久久久久久一区| 亚洲三级久久久| 亚洲人被黑人高潮完整版| 中文字幕综合网| 成人欧美一区二区三区黑人麻豆 | 97精品国产97久久久久久久久久久久| 国产精品18久久久久久久网站| 国产乱码精品一区二区三| 国产成人精品网址| 成人动漫在线一区| 91丨porny丨户外露出| 日本高清不卡aⅴ免费网站| 欧洲另类一二三四区| 日韩无一区二区| 国产偷国产偷亚洲高清人白洁| 国产女主播视频一区二区| 亚洲美女屁股眼交3| 天堂成人国产精品一区| 激情成人午夜视频| 成人av免费观看| 欧美日韩一区在线| 精品电影一区二区三区| 国产香蕉久久精品综合网| 日韩码欧中文字| 日本aⅴ免费视频一区二区三区| 国产一区视频导航| 91免费看`日韩一区二区| 欧美一级日韩不卡播放免费| 中文字幕乱码亚洲精品一区| 一区二区三区高清在线| 日韩av二区在线播放| 从欧美一区二区三区| 4438x亚洲最大成人网| 国产午夜精品一区二区| 亚洲高清免费在线| 国产精品一区二区三区四区| 欧美日韩在线直播| 久久精品人人做人人爽人人| 亚洲高清免费一级二级三级| 国产乱子轮精品视频| 精品视频一区二区三区免费| 久久久久久久综合色一本| 亚洲成a人v欧美综合天堂下载| 国v精品久久久网| 欧美人与z0zoxxxx视频| 亚洲欧洲美洲综合色网| 美女视频第一区二区三区免费观看网站| 成人福利电影精品一区二区在线观看 | 精品国产一区二区三区久久久蜜月 | 国产成人综合视频| 欧美另类videos死尸| 国产精品女同互慰在线看| 免费成人av在线| 在线国产亚洲欧美| 国产精品色在线观看| 韩日精品视频一区| 884aa四虎影成人精品一区| 亚洲日本在线看| 国产91精品一区二区| 精品国产乱码久久久久久影片| 欧美日韩精品系列| 蜜桃传媒麻豆第一区在线观看| av成人老司机| 久久久久久久性| 国产自产视频一区二区三区| 欧美日韩国产bt| 亚洲精品视频一区二区| 成人午夜伦理影院| 久久久久久久久99精品| 蜜臀av性久久久久蜜臀av麻豆 | 中文字幕一区在线| 国产不卡视频在线观看| www国产精品av| 国产一区二区三区av电影| 欧美成人精品福利| 精品一区二区三区蜜桃| 欧美一级日韩不卡播放免费| 免费国产亚洲视频|