C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[17389] Re:숫자 콤포넌트 C++ Builder6 ->NumEdit.cpp
유영인 [Chris] [cuperido] 889 읽음    2002-04-10 16:35
아래 함수를 사용해 보세요. 델파이 쓸때 만든건데.. 급히 바꾸느라 문제가 있을지 모르겠네요.


// 콤마 금액을 숫자로
int __fastcall TForm1::PayStrToInt(String stString)
{

String            stNumber = "";
int               itTemp;


for(itTemp = 0; itTemp < stString.Length(); itTemp ++)
   if(stString.c_str()[itTemp] != ',')
     stNumber = stNumber + stString.c_str()[itTemp];

try {
   return(stNumber.ToInt());
  } catch(...) {
   return(0);
}

}


// 숫자를 콤마 금액으로
String __fastcall TForm1::IntToPayStr(int itNumber)
{

bool              blMinus = false;
String            stString, stPayString = "";


if(itNumber < 0) {
   itNumber = abs(itNumber);
   blMinus  = true;
}

stString = IntToStr(itNumber);


do {
   if(!stPayString.IsEmpty()) stPayString = "," + stPayString;
   stPayString =
    stString.SubString(stString.Length() - 2 < 1 ? 1 : stString.Length() - 2, 3) +
    stPayString;

   stString = stString.SubString(1, stString.Length() - 3);
} while(!stString.IsEmpty());

if(blMinus) stPayString = "-" + stPayString;
return(stPayString);

}



파워프리 님이 쓰신 글 :
: 안녕하세요 고수님,...
:
: 금액을 처리하다보면 숫자,콤마 콤포넌트가 필요합니다.
:
: Numedit.pas 를 콤포넌트에 추가해서 사용하면 Error가 발생합니다.
:
: C++ Builder 고수님들 부탁합니다.
:
: 사용 가능한 내용과 방법좀 가르쳐주세요.
:
: 즐거운 하루되세요.
:
: --------------------
: 예:     123,456
:          23,000
:      12,550,000
: --------------------
: 감사합니다.
:
:     
:

+ -

관련 글 리스트
17357 숫자 콤포넌트 C++ Builder6 ->NumEdit.cpp 파워프리 808 2002/04/09
17389     Re:숫자 콤포넌트 C++ Builder6 ->NumEdit.cpp 유영인 [Chris] 889 2002/04/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.