validview.cpp

来自「讲mfc的书」· C++ 代码 · 共 115 行

CPP
115
字号
// validView.cpp : implementation of the CValidView class
//

#include "stdafx.h"
#include "valid.h"

typedef float Currency;  // used for DDV

#include "validDoc.h"
#include "validView.h"
#include "customdd.h"

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




/////////////////////////////////////////////////////////////////////////////
// CValidView

IMPLEMENT_DYNCREATE(CValidView, CFormView)

// Class Wizard won't put this here because it thinks
// Dialog boxes handle OnOK. They do, but this is a
// form view, not a dialog box
BEGIN_MESSAGE_MAP(CValidView, CFormView)
        //{{AFX_MSG_MAP(CValidView)
        ON_COMMAND(IDOK,OnOK)
        //}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CValidView construction/destruction

CValidView::CValidView()
        : CFormView(CValidView::IDD)
{
    validating=FALSE;
        vid=0;
        //{{AFX_DATA_INIT(CValidView)
        m_age = 18;
        m_name = _T("");
  	     m_wager = 1.0;
	m_btnenable = TRUE;
	//}}AFX_DATA_INIT
        // TODO: add construction code here

}

CValidView::~CValidView()
{
}

void CValidView::DoDataExchange(CDataExchange* pDX)
{
        CFormView::DoDataExchange(pDX);
        //{{AFX_DATA_MAP(CValidView)
    DDX_Text(pDX, IDC_AGE, m_age);
    DDV_MinMaxInt(pDX, m_age, 18, 150);
    DDX_Text(pDX, IDC_NAME, m_name);
    DDV_MaxChars(pDX, m_name, 64);
	DDX_Text(pDX, IDC_WAGER, m_wager);
	DDV_MinMaxCurrency(pDX, m_wager, 1.f, 100.f);
	DDX_EnableWindow(pDX, IDOK, m_btnenable);
	//}}AFX_DATA_MAP
}

BOOL CValidView::PreCreateWindow(CREATESTRUCT& cs)
{
        // TODO: Modify the Window class or styles here by modifying
        //  the CREATESTRUCT cs

        return CFormView::PreCreateWindow(cs);
}

/////////////////////////////////////////////////////////////////////////////
// CValidView diagnostics

#ifdef _DEBUG
void CValidView::AssertValid() const
{
        CFormView::AssertValid();
}

void CValidView::Dump(CDumpContext& dc) const
{
        CFormView::Dump(dc);
}

CValidDoc* CValidView::GetDocument() // non-debug version is inline
{
        ASSERT(m_pDocument->IsKindOf(RUNTIME_CLASS(CValidDoc)));
        return (CValidDoc*)m_pDocument;
}
#endif //_DEBUG

/////////////////////////////////////////////////////////////////////////////
// CValidView message handlers

void CValidView::OnOK()
{
   if (UpdateData(TRUE))
	   {
       MessageBox("Wager placed");
	   m_btnenable=FALSE;
	   UpdateData(FALSE);
	   }
}


⌨️ 快捷键说明

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