?? indicbutton.cpp
字號:
// IndicButton.cpp : implementation file
//
#include "stdafx.h"
#include "EPro.h"
#include "IndicButton.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CIndicButton
CIndicButton::CIndicButton()
{
m_bUse=TRUE;
m_bEnAuto=FALSE;
}
CIndicButton::~CIndicButton()
{
}
BEGIN_MESSAGE_MAP(CIndicButton, CXTButton)
//{{AFX_MSG_MAP(CIndicButton)
ON_WM_RBUTTONUP()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CIndicButton message handlers
void CIndicButton::InitButton(CWnd* pWnd,BOOL bEnAuto,BOOL bIndicator,
UINT idStaticIco,UINT idRunIco)
{
m_bEnAuto=bEnAuto;//是否允許自動
m_bIndicator=bIndicator;//是否允許表示狀態(正在進行操作和等待操作)
m_idRunIco=idRunIco;//idRunIco=0表示沒圖標
m_idStaticIco=idStaticIco;//同上
SetFont(pWnd->GetFont());//糾正XT的字體問題
memcpy(&xtAfxData.font, pWnd->GetFont(),sizeof(CFont));
SetXButtonStyle(BS_XT_XPFLAT| BS_RIGHT);//設置XP風格
GetWindowText(m_strOldFace);//得到文本標題
if(bEnAuto)
{
m_strAutoFace="(自動)"+m_strOldFace;//在標題前加“(自動)”
m_clrOld=GetColorFace();
}
if(bIndicator)
{
SetIndicator(FALSE);//設置等待操作時的圖標
}
else if(idStaticIco!=0)
{
SetIcon(CSize(32,32),idStaticIco);
}
}
void CIndicButton::SetIndicator(BOOL bRunning)
{
m_bRunning=bRunning;
if(bRunning)//表示有操作正在進行
{
if(m_idRunIco!=0)//用圖標表示相應的操作正在進行
{
SetIcon(CSize(32,32),m_idRunIco);
}
}
else
{
if(m_idStaticIco!=0)
{
SetIcon(CSize(32,32),m_idStaticIco);
}
}
}
void CIndicButton::OnRButtonUp(UINT nFlags, CPoint point)
{
// TODO: Add your message handler code here and/or call default
//鼠標右鍵點擊設置自動
if(m_bEnAuto)
{
if(m_bAuto)
{
EnableAuto(FALSE);//取消自動
}
else
{
EnableAuto(TRUE);//設置自動
}
}
CXTButton::OnRButtonUp(nFlags, point);
}
void CIndicButton::EnableAuto(BOOL bAuto)
{
m_bAuto=bAuto;
if(bAuto)
{
m_bAuto=TRUE;
SetWindowText(m_strAutoFace);
SetColorFace(m_clrOld+0x000f0f0f);
}
else
{
m_bAuto=FALSE;
SetWindowText(m_strOldFace);
SetColorFace(m_clrOld);
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -