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
[29224] Re:숫자를 버튼으로 입력하고 싶은데......
posix.duo [posix] 1098 읽음    2004-03-31 17:24
아래 소스는 제가 프로젝트에서 직접 사용한 것입니다.
참조하세요...

//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop

#include "NumericPad.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma link "ColorButton"
#pragma link "Indpanel"
#pragma link "PairPanel"
#pragma link "BUEdit"
#pragma resource "*.dfm"
TfmNumericPad *fmNumericPad;
//---------------------------------------------------------------------------
__fastcall TfmNumericPad::TfmNumericPad(TComponent* Owner): TForm(Owner)
{
}
//---------------------------------------------------------------------------
void __fastcall TfmNumericPad::FormActivate(TObject *Sender)
{
    edResult->SetFocus();
}
//---------------------------------------------------------------------------
void __fastcall TfmNumericPad::c1Click(TObject *Sender)
{
    edResult->Text = IntToStr(edResult->Text.ToIntDef(0) * 10 + ((TColorButton*)Sender)->Tag);
}
//---------------------------------------------------------------------------
void __fastcall TfmNumericPad::btnClearClick(TObject *Sender)
{
    //ppText->CaptionFalse = "0";
    edResult->Text = "0";
}
//---------------------------------------------------------------------------
void __fastcall TfmNumericPad::btnEnterClick(TObject *Sender)
{
    if(edResult->Text.IsEmpty())    edResult->Text = "0";
    ModalResult = mrOk;
}
//---------------------------------------------------------------------------
void __fastcall TfmNumericPad::btnExitClick(TObject *Sender)
{
    ModalResult = mrCancel;
}
//---------------------------------------------------------------------------
void __fastcall TfmNumericPad::edResultKeyPress(TObject *Sender, char &Key)
{
    if((Key < 0x30 || Key > 0x39) && Key != VK_BACK && Key != VK_RETURN && Key != VK_ESCAPE) Key = 0;
    if(!edResult->Text.IsEmpty() && edResult->Text.ToIntDef(0) == 0) edResult->Text = "";
}
//---------------------------------------------------------------------------
void __fastcall TfmNumericPad::edResultKeyUp(TObject *Sender, WORD &Key, TShiftState Shift)
{
    if(Key == VK_RETURN) btnEnterClick(NULL);
    if(Key == VK_ESCAPE) btnExitClick(NULL);
}
//---------------------------------------------------------------------------


실론티 한잔 님이 쓰신 글 :
: 예를 들어 전화기나 계산기 보면 숫자를 버튼을 이용해서 EDIT 박스에
:
: 뿌려 주잖아요... 그걸 구현하고 싶은데 도와 주세요 아직 초보라 많이 어렵습니다....
:
: 대충 스위치문으로 입력버튼 컨트롤할 생각인데 그걸 에딧박스에 뿌려줄때
:
: 배열로 나타내면 될꺼 같은데 뭔가 참고할 만한 소스가 필요합니다....
:
: 혼자서 많이 시도했는데 잘 되질 않네요
:
: 도움 부탁드립니다 그럼예제 소스나 조언 부탁드립니다 즐거운 하루 되세요

+ -

관련 글 리스트
29223 숫자를 버튼으로 입력하고 싶은데...... 실론티 한잔 820 2004/03/31
34751     Re:숫자를 버튼으로 입력하고 싶은데...... 금목암 859 2004/03/31
29224     Re:숫자를 버튼으로 입력하고 싶은데...... posix.duo 1098 2004/03/31
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.