📄 cnum.cpp
字号:
// CNUM.cpp : implementation file
//
#include "stdafx.h"
#include "Calculator.h"
#include "CNUM.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CCNUM dialog
CCNUM::CCNUM(CWnd* pParent /*=NULL*/)
: CDialog(CCNUM::IDD, pParent)
{
//{{AFX_DATA_INIT(CCNUM)
// NOTE: the ClassWizard will add member initialization here
//}}AFX_DATA_INIT
}
void CCNUM::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CCNUM)
// NOTE: the ClassWizard will add DDX and DDV calls here
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CCNUM, CDialog)
//{{AFX_MSG_MAP(CCNUM)
ON_BN_CLICKED(IDC_BTN_1, OnBtn1)
ON_BN_CLICKED(IDC_BTN_2, OnBtn2)
ON_BN_CLICKED(IDC_BTN_7, OnBtn7)
ON_BN_CLICKED(IDC_BTN_9, OnBtn9)
ON_BN_CLICKED(IDC_BTN_3, OnBtn3)
ON_BN_CLICKED(IDC_BTN_4, OnBtn4)
ON_BN_CLICKED(IDC_BTN_5, OnBtn5)
ON_BN_CLICKED(IDC_BTN_6, OnBtn6)
ON_BN_CLICKED(IDC_BTN_0, OnBtn0)
ON_BN_CLICKED(IDC_BTN_DOT, OnBtnDot)
ON_BN_CLICKED(IDC_BTN_8, OnBtn8)
ON_BN_CLICKED(IDC_BTN_BIN, OnBtnBin)
ON_BN_CLICKED(IDC_BTN_OCT, OnBtnOct)
ON_BN_CLICKED(IDC_BTN_HEX, OnBtnHex)
ON_BN_CLICKED(IDC_BTN_SPACE, OnBtnSpace)
ON_BN_CLICKED(IDC_BTN_BACK, OnBtnBack)
ON_BN_CLICKED(IDC_BTN_A, OnBtnA)
ON_BN_CLICKED(IDC_BTN_B, OnBtnB)
ON_BN_CLICKED(IDC_BTN_C, OnBtnC)
ON_BN_CLICKED(IDC_BTN_D, OnBtnD)
ON_BN_CLICKED(IDC_BTN_E, OnBtnE)
ON_BN_CLICKED(IDC_BTN_F, OnBtnF)
ON_BN_CLICKED(IDC_BTN_PI, OnBtnPi)
ON_BN_CLICKED(IDC_BTN_EE, OnBtnEe)
ON_WM_SETCURSOR()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CCNUM message handlers
BOOL CCNUM::OnInitDialog()
{
CDialog::OnInitDialog();
m_toolTip.Create( this );
CStringArray straInfo;
straInfo.RemoveAll();
straInfo.Add( "十六进制的A" );
m_toolTip.AddControlInfo( IDC_BTN_A, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "十六进制的B" );
m_toolTip.AddControlInfo( IDC_BTN_B, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "十六进制的C" );
m_toolTip.AddControlInfo( IDC_BTN_C, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "十六进制的D" );
m_toolTip.AddControlInfo( IDC_BTN_D, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "十六进制的E" );
m_toolTip.AddControlInfo( IDC_BTN_E, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "十六进制的F" );
m_toolTip.AddControlInfo( IDC_BTN_F, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "二进制数的结束符" );
m_toolTip.AddControlInfo( IDC_BTN_BIN, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "八进制数的结束符" );
m_toolTip.AddControlInfo( IDC_BTN_OCT, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "十六进制数的结束符" );
m_toolTip.AddControlInfo( IDC_BTN_HEX, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "圆周率π" );
m_toolTip.AddControlInfo( IDC_BTN_PI, straInfo, RGB(255,255,0) );
straInfo.RemoveAll();
straInfo.Add( "自然对数e" );
m_toolTip.AddControlInfo( IDC_BTN_EE, straInfo, RGB(255,255,0) );
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CCNUM::OnBtn1()
{
m_strN="1";
}
void CCNUM::OnBtn2()
{
m_strN="2";
}
void CCNUM::OnBtn3()
{
m_strN="3";
}
void CCNUM::OnBtn4()
{
m_strN="4";
}
void CCNUM::OnBtn5()
{
m_strN="5";
}
void CCNUM::OnBtn6()
{
m_strN="6";
}
void CCNUM::OnBtn7()
{
m_strN="7";
}
void CCNUM::OnBtn8()
{
m_strN="8";
}
void CCNUM::OnBtn9()
{
m_strN="9";
}
void CCNUM::OnBtn0()
{
m_strN="0";
}
void CCNUM::OnBtnDot()
{
m_strN=".";
}
void CCNUM::OnCancel()
{
m_strN="OVER";
CDialog::OnCancel();
}
void CCNUM::OnOK()
{
// CDialog::OnOK();
}
void CCNUM::OnBtnBin()
{
m_strN="xb";
}
void CCNUM::OnBtnOct()
{
m_strN="xo";
}
void CCNUM::OnBtnHex()
{
m_strN="xh";
}
void CCNUM::OnBtnSpace()
{
m_strN=" ";
}
void CCNUM::OnBtnBack()
{
m_strN="BACK";
}
void CCNUM::OnBtnA()
{
m_strN="a";
}
void CCNUM::OnBtnB()
{
m_strN="b";
}
void CCNUM::OnBtnC()
{
m_strN="c";
}
void CCNUM::OnBtnD()
{
m_strN="d";
}
void CCNUM::OnBtnE()
{
m_strN="e";
}
void CCNUM::OnBtnF()
{
m_strN="f";
}
void CCNUM::OnBtnPi()
{
m_strN="PI";
}
void CCNUM::OnBtnEe()
{
m_strN="E";
}
BOOL CCNUM::OnSetCursor(CWnd* pWnd, UINT nHitTest, UINT message)
{
UINT n=pWnd->GetDlgCtrlID();
bool bOk=0;
if(n==IDC_BTN_A) bOk=1;
else if(n==IDC_BTN_B) bOk=1;
else if(n==IDC_BTN_C) bOk=1;
else if(n==IDC_BTN_D) bOk=1;
else if(n==IDC_BTN_E) bOk=1;
else if(n==IDC_BTN_F) bOk=1;
else if(n==IDC_BTN_BIN) bOk=1;
else if(n==IDC_BTN_OCT) bOk=1;
else if(n==IDC_BTN_HEX) bOk=1;
else if(n==IDC_BTN_EE) bOk=1;
else if(n==IDC_BTN_PI) bOk=1;
if(bOk)
{
m_toolTip.ShowToolTip( n );
m_nCtrlIDTmp=n;
return 1;
}
m_toolTip.ErasePreviousToolTipDisplay(m_nCtrlIDTmp);
return CDialog::OnSetCursor(pWnd, nHitTest, message);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -