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
[50660] 단순히 표시목적이라면 OnDrawDataCell등의 이벤트를 사용해 보세요.
조대현.Clau [casanebula] 1663 읽음    2007-09-28 11:17
[1] DBGrid의 OnDrawCell 이벤트에서 무식하게 강제로 바꿔버리세요.

1. 현재 그리려는 셀이 주민번호인지 판단하고 뒷자리를 *처리
2. 아마 이런 형식이 될것 같은데요.
3. Grid의 OnDrawCell에서 텍스트, 색상바꾸는 자료는 질답/팁게시판에 있습니다. 참고하세요.

void __fastcall TForm9::DBGrid1DrawDataCell(TObject *Sender, const TRect &Rect,
      TField *Field, TGridDrawState State)
{
    AnsiString asID;

    asID = Field->AsString;
    // 주민 번호 13자리 판단

    if(asID.Length() == 13){
        Field->AsString = asID.SubString(1, 6) + "*******";
    }

        // TextOut
        TextOut(..................)
}

[2] 혹시 모르니 DBGrid->Recordset->Field쪽에 Mask속성을 살펴보세요. EditMask는 존재합니다.

구윤태 님이 쓰신 글 :
: 질문 내용
: 디비에서 가져온 값을 TDBGrid 연결해서 값을 넣는데요..
: ID 가 주민번호 일경우 , ID 뒷자리를 * 표시 할려구 합니다.
:
: 그런데 디비에서 가져온 값을 분리해서 코드를 찾아서 변경하고 싶은데..
: 연결부분들이 대부분 숨겨져 있어서 어떻게 처리 해야 되는지 방법을 모르겠습니다.
:
: TDBGrid 와 DB 연결부분을 수정할 수 있는지 알고 싶습니다.
:
:
: 제가 초보인데다 , 남의 소스를 수정해야 하는데 질문이 엉성해서
: 죄송합니다.
:
: 가능한지 좀 알고 싶습니다.
:
:
:
: cf)
:
: c++builder 에서 디비 쿼리 테스트하는 방법을 알고 싶습니다.

+ -

관련 글 리스트
50654 TDBGrid 사용중에.. 디비에서 가져온 값을 변경해서 TDBGrid 넣어 주고 싶습니다. 구윤태 1470 2007/09/27
50660     단순히 표시목적이라면 OnDrawDataCell등의 이벤트를 사용해 보세요. 조대현.Clau 1663 2007/09/28
50673         [고수님 알려주세요]DBGrid의 OnDrawCell 이벤트가 , OnDrawDataCell 인가요..호출되지않습니다. 구윤태 1646 2007/09/28
50674             실제 테스트(BDS2006 빌더)해보니 EditMask속성으로 해결됩니다. 조대현.Clau 1700 2007/09/28
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.