2015-01-12 3 views

답변

0

감사를 _aoti 사용하여 정수로 변경. 편집 상자에 음수를 입력하는 방법을 찾았습니다. 여기에 코드

//add a macro 

#define INVALID_INT_MSG_EX L"Enter an integer between %d and %d." 

//declare a global variable 
int flag_for_negative_numbers = 0 

void CTouchPanelModule::OnEnChangeTpTempValue() 
{ 
    UpdateData(true); 
    if (editBoxVariable_value == _T('-') && (flag_for_negative_numbers == 0)) 
     { 
      flag_for_negative_numbers = 1; 
     } 
     else 
     { 
      int tempValueTouchPanel_value = _wtoi(editBoxVariable_value); 
       ValidateEditCtrl(ID_of_the_edit_box, 
       editBoxVariable_value, 
       MIN_value, 
       MAX_value, default_value); 
     } 
} 

//Below is the defination of ValidateEditCtrl() function 

bool CustomDialogEx::ValidateEditCtrl(int CtrlId, int& valueToCheck, int minValue, int maxValue, CString defaultValue) 
{ 
    auto isValid = true; 
    UpdateData(TRUE); 
    if (valueToCheck < minValue || valueToCheck > maxValue) 
    { 
     CString cString; 
     cString.Format(INVALID_INT_MSG_EX, minValue, maxValue); 
     ChangeMessageBoxTitle appTitle(dlgTitle); 
     AfxMessageBox(cString); 
     GetDlgItem(CtrlId)->SetWindowText(defaultValue); 
     isValid = false; 
    } 
    return isValid; 
} 
관련 문제