⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 functionsdlg.cpp

📁 一个不错的简单实用的公式解析器
💻 CPP
字号:
// FunctionsDlg.cpp : implementation file
//

#include "stdafx.h"
#include "Calculator.h"
#include "FunctionsDlg.h"

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

/////////////////////////////////////////////////////////////////////////////
// CFunctionsDlg dialog


CFunctionsDlg::CFunctionsDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CFunctionsDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CFunctionsDlg)
		// NOTE: the ClassWizard will add member initialization here
	//}}AFX_DATA_INIT
}


void CFunctionsDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CFunctionsDlg)
	DDX_Control(pDX, IDC_LIST_FUNCTIONS, m_ctrlListFunctions);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CFunctionsDlg, CDialog)
	//{{AFX_MSG_MAP(CFunctionsDlg)
	ON_LBN_SELCHANGE(IDC_LIST_FUNCTIONS, OnSelchangeListFunctions)
	ON_BN_CLICKED(IDC_BUTTON_INSERT, OnButtonInsert)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CFunctionsDlg message handlers

BOOL CFunctionsDlg::OnInitDialog() 
{
	CDialog::OnInitDialog();
	
	m_ctrlListFunctions.AddString("ABS(nExpression)");
	m_ctrlListFunctions.AddString("ALLTRIM(cExpression)");
	m_ctrlListFunctions.AddString("ANSITOOEM(cExpression)");
	m_ctrlListFunctions.AddString("AT(cSearchExpression, cExpressionSearched [, nOccurrence])");
	m_ctrlListFunctions.AddString("ATAN(nExpression)");
	m_ctrlListFunctions.AddString("ATC(cSearchExpression, cExpressionSearched [, nOccurrence])");
	m_ctrlListFunctions.AddString("BETWEEN(eTestValue, eLowValue, eHighValue)");
	m_ctrlListFunctions.AddString("CDOW(dExpression )");
	m_ctrlListFunctions.AddString("CEILING(nExpression)");
	m_ctrlListFunctions.AddString("CHR(nANSICode)");
	m_ctrlListFunctions.AddString("CHRTRAN(cSearchedExpression, cSearchExpression, cReplacementExpression)");
	m_ctrlListFunctions.AddString("CMONTH(dExpression)");
	m_ctrlListFunctions.AddString("COS(nExpression)");
	m_ctrlListFunctions.AddString("CTOD(cExpression)");
	m_ctrlListFunctions.AddString("CTOT(cCharacterExpression)");
	m_ctrlListFunctions.AddString("DATE([nYear, nMonth, nDay])");
	m_ctrlListFunctions.AddString("DATETIME([nYear, nMonth, nDay [, nHours [, nMinutes [, nSeconds]]]])");
	m_ctrlListFunctions.AddString("DAY(dExpression)");
	m_ctrlListFunctions.AddString("DMY(dExpression)");
	m_ctrlListFunctions.AddString("DTOC(dExpression [, 1])");
	m_ctrlListFunctions.AddString("DTOS(dExpression)");
	m_ctrlListFunctions.AddString("EMPTY(eExpression)");
	m_ctrlListFunctions.AddString("EXP(nExpression)");
	m_ctrlListFunctions.AddString("FLOOR(nExpression)");
	m_ctrlListFunctions.AddString("GOMONTH(dExpression, nNumberOfMonths)");
	m_ctrlListFunctions.AddString("HOUR(tExpression)");
	m_ctrlListFunctions.AddString("IIF(lExpression, eExpression1, eExpression2)");
	m_ctrlListFunctions.AddString("INT(nExpression)");
	m_ctrlListFunctions.AddString("ISALPHA(cExpression)");
	m_ctrlListFunctions.AddString("ISDIGIT(cExpression)");
	m_ctrlListFunctions.AddString("ISLOWER(cExpression)");
	m_ctrlListFunctions.AddString("ISUPPER(cExpression)");
	m_ctrlListFunctions.AddString("LEFT(cExpression, nExpression)");
	m_ctrlListFunctions.AddString("LEN(cExpression)");
	m_ctrlListFunctions.AddString("LIKE(cExpression1, cExpression2)");
	m_ctrlListFunctions.AddString("LOG(nExpression)");
	m_ctrlListFunctions.AddString("LOG10(nExpression)");
	m_ctrlListFunctions.AddString("LOWER(cExpression)");
	m_ctrlListFunctions.AddString("LTRIM(cExpression)");
	m_ctrlListFunctions.AddString("MAX(eExpression1, eExpression2 [, eExpression3 ...])");
	m_ctrlListFunctions.AddString("MDY(dExpression)");
	m_ctrlListFunctions.AddString("MIN(eExpression1, eExpression2 [, eExpression3 ...])");
	m_ctrlListFunctions.AddString("MOD(nDividend, nDivisor)");
	m_ctrlListFunctions.AddString("MONTH(dExpression)");
	m_ctrlListFunctions.AddString("OCCURS(cSearchExpression, cExpressionSearched)");
	m_ctrlListFunctions.AddString("OEMTOANSI(cExpression)");
	m_ctrlListFunctions.AddString("PADC(eExpression, nResultSize [, cPadCharacter])");
	m_ctrlListFunctions.AddString("PADL(eExpression, nResultSize [, cPadCharacter])");
	m_ctrlListFunctions.AddString("PADR(eExpression, nResultSize [, cPadCharacter])");
	m_ctrlListFunctions.AddString("PI()");
	m_ctrlListFunctions.AddString("REPLICATE(cExpression, nTimes)");
	m_ctrlListFunctions.AddString("RIGHT(cExpression, nCharacters)");
	m_ctrlListFunctions.AddString("ROUND(nExpression, nDecimalPlaces)");
	m_ctrlListFunctions.AddString("RTRIM(cExpression)");
	m_ctrlListFunctions.AddString("SEC(tExpression)");
	m_ctrlListFunctions.AddString("SECONDS()");
	m_ctrlListFunctions.AddString("SIGN(nExpression)");
	m_ctrlListFunctions.AddString("SIN(nExpression)");
	m_ctrlListFunctions.AddString("SPACE(nSpaces)");
	m_ctrlListFunctions.AddString("SQRT(nExpression)");
	m_ctrlListFunctions.AddString("STR(nExpression [, nLength [, nDecimalPlaces]])");
	m_ctrlListFunctions.AddString("STRTRAN(cSearched, cSearchFor [, cReplacement] [, nStartOccurrence] [, nNumberOfOccurrences])");
	m_ctrlListFunctions.AddString("STUFF(cExpression, nStartReplacement, nCharactersReplaced, cReplacement)");
	m_ctrlListFunctions.AddString("SUBSTR(cExpression, nStartPosition [, nCharactersReturned])");
	m_ctrlListFunctions.AddString("TAN(nExpression)");
	m_ctrlListFunctions.AddString("TIME([nExpression])");
	m_ctrlListFunctions.AddString("TRIM(cExpression)");
	m_ctrlListFunctions.AddString("UPPER(cExpression)");
	m_ctrlListFunctions.AddString("VAL(cExpression)");
	m_ctrlListFunctions.AddString("VARTYPE(eExpression [, lNullDataType])");
	m_ctrlListFunctions.AddString("YEAR(dExpression)");
	
	m_ctrlListFunctions.SetCurSel(0);
	OnSelchangeListFunctions();

	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CFunctionsDlg::OnSelchangeListFunctions() 
{
	m_ctrlListFunctions.GetText(m_ctrlListFunctions.GetCurSel(), m_strFunction);	
}

void CFunctionsDlg::OnButtonInsert() 
{
	OnOK();
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -