📄 fcinputdlg.cpp
字号:
// FCInputDlg.cpp : implementation file
//
#include "stdafx.h"
#include "FC.h"
#include "FCInputDlg.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CFCInputDlg dialog
CFCInputDlg::CFCInputDlg(CWnd* pParent /*=NULL*/)
: CDialog(CFCInputDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CFCInputDlg)
m_Input = _T("");
m_Message = _T("");
//}}AFX_DATA_INIT
}
void CFCInputDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CFCInputDlg)
DDX_Text(pDX, IDC_INPUT, m_Input);
DDX_Text(pDX, IDC_STATIC_MESSAGE, m_Message);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CFCInputDlg, CDialog)
//{{AFX_MSG_MAP(CFCInputDlg)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CFCInputDlg message handlers
int CFCInputDlg::InputInt(void)
{
m_bInputInt=TRUE;
m_Message="请输入一个整数:";
m_Input="";
DoModal();
return atoi(m_Input);
}
double CFCInputDlg::InputDouble(void)
{
m_bInputInt=FALSE;
m_Message="请输入一个实数:";
m_Input="";
DoModal();
return atof(m_Input);
}
void CFCInputDlg::OnCancel()
{
UpdateData(TRUE);
int i,length=m_Input.GetLength();
int signal=1;
for(i=0;i<length && (m_Input[i]==' ' || m_Input[i]=='\t');i++);//跳过前导空格
if(m_bInputInt)
{
if(i!=length &&(m_Input[i]=='+' || m_Input[i]=='-'))
i++;
if(i!=length)
{
for(;i<length && m_Input[i]>='0' && m_Input[i]<='9';i++);
for(;i<length && (m_Input[i]==' ' || m_Input[i]=='\t');i++);//跳过后跟空格
if(i==length)
{
CDialog::OnCancel();
return;
}
}
MessageBox("请输入一个整数!","FC 2.2",MB_OK|MB_ICONEXCLAMATION);
GetDlgItem(IDC_INPUT)->SetFocus();
((CEdit*)GetDlgItem(IDC_INPUT))->SetSel(0,-1);
}
else
{
if(i!=length &&(m_Input[i]=='+' || m_Input[i]=='-'))
i++;
if(i!=length)
{
for(;i<length && m_Input[i]>='0' && m_Input[i]<='9';i++);
if(i<length && m_Input[i]=='.')
for(i++;i<length && m_Input[i]>='0' && m_Input[i]<='9';i++);
for(;i<length && (m_Input[i]==' ' || m_Input[i]=='\t');i++);//跳过后跟空格
if(i==length)
{
CDialog::OnCancel();
return;
}
}
MessageBox("请输入一个实数!","FC 2.2",MB_OK|MB_ICONEXCLAMATION);
GetDlgItem(IDC_INPUT)->SetFocus();
((CEdit*)GetDlgItem(IDC_INPUT))->SetSel(0,-1);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -