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

델파이 Q&A
Delphi Programming Q&A
[4914] [답변] HK4801/ [DB질문]논리형 필드 타입의 값을 어떻
sabsd [ ] 948 읽음    1998-10-16 07:05

안녕하세요...김남석(ID:ILKSA)입니다...

질문의 의도를 제대로 파악했는지 모르겠군요...
파라독스에서 논리형 필드 값을 사용하는 방법은 간단합니다...
논리형 필드 값을 알아오기 위한 메소드 중 AsBoolean이라는 것이 있습니다...
다음의 코딩을 참고하세요...
보시면 아시겠지만...DBGrid를 더블클릭했을 때...
논리형으로 지정한 필드에서 값을 얻어와서 Edit1에 값을 넣어주는 것과...
디비체크박스를 클릭했을 때 체크되는 상태에 따라서...
Edit1에 값을 넣어주는 것...두 가지 루틴입니다...
질문하신 것에 대한 답변은 AsBoolean을 사용하시면 된다입니다...
그런데...그 논리형 필드에 들어있는 값이...
공백인지를 제일 먼저 검사를 해주어야 제대로 작동됩니다...
그 이유는 논리형이기 때문에 그렇습니다...

procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
    if(Query1.FieldByName('A_TTTT').AsString='')then
        Edit1.Text:='중성'
    else
        if(Query1.FieldByName('A_TTTT').AsBoolean)then
            Edit1.Text:='남자'
        else
            if not Query1.FieldByName('A_TTTT').AsBoolean then
            Edit1.Text:='여자';
end;

procedure TForm1.DBCheckBox1Click(Sender: TObject);
begin
    case DBCheckBox1.State of
        cbUnchecked:
            Edit1.Text:='여자';
        cbChecked:
            Edit1.Text:='남자';
        cbGrayed:
            Edit1.Text:='중성';
    end;
end;


감사합니다...
그럼...


+ -

관련 글 리스트
4914 [답변] HK4801/ [DB질문]논리형 필드 타입의 값을 어떻 sabsd 948 1998/10/16
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.