Visual Studio 6Visual C++ 7.0Windows 2000Visual C++ 6.0Windows XPMFCIntermediateDevVisual StudioWindowsC++
CEditMoeda






4.25/5 (3 votes)
Oct 23, 2002

60151

846
A CEdit enhancement for efficient currency capturing.
Introduction
At first, sorry if my English isn't very well. The CEditMoeda
allows to capture currency values with a CEdit
.
To facilitate the usage, the control was sub-classed from CFocusEditCtrl
, created by James R. Twine.
Background
The idea of this edit control came from the system of electronic attendance in my country. While the user is typing the value, the zeros and decimal separators are shown at the edit control.
Using the code
The code is too simple, but has 3 details.
- Create and initialize a
double
to receive the captured value (create at the class, but do not use the Add Variable at Class Wizard - Register a
double
to receive the typed valueBOOL CEditMoedaDemoDlg::OnInitDialog() { CDialog::OnInitDialog(); // TODO: Add extra initialization here //Register the DOUBLE with control m_EditMoedaCtr.RegistraDouble(m_Valor); return TRUE; // return TRUE unless you set the focus to a control }
- Include one line to send the typed value
void CEditMoedaDemoDlg::DoDataExchange(CDataExchange* pDX) { CDialog::DoDataExchange(pDX); //{{AFX_DATA_MAP(CEditMoedaDemoDlg) DDX_Control(pDX, IDC_EditMoeda, m_EditMoedaCtr); //}}AFX_DATA_MAP m_EditMoedaCtr.Update(); }
- To facilitate the creation and usage of the
CEdtiMoeda
, specify the currency symbol by the variablem_SimboloMonetario
.
Problems
Until now, I can't move the caret to the end fo the text. If someone can obtain this code, please send me an e-mail.