|
1. BDS2006 빌더버전 기본 DBGrid에는 다음 코드가 작동합니다.
DBGrid1->DataSource->DataSet->FieldByName("ID")->EditMask = "######-*******";
DBGrid에 연결된 데이터셋(저는 ADOTable)의 "ID"라는 필드 마스크를 설정하는 겁니다.
아마 구버전에서도 무리없이 또는 비슷한 코드로 작동되리라 생각합니다.
#은 원래 숫자가 보이며, #이외의 문자는 덮어씌우는것 같습니다. 헬프 참고하시면 충분할것 같네요.
구윤태 님이 쓰신 글 :
: - 질문 내용
: 디비에서 가져온 값을 TDBGrid 연결해서 값을 넣는데요..
: ID 가 주민번호 일경우 , ID 뒷자리를 * 표시 할려구 합니다.
:
:
: 조대현님이 알려주신대로 했지만
: OnDrawCell 이벤트가 제가 사용하는 C++Builder 5.0 에 없어서
: OnDrawColumnCell , OnDrawDataCell 두개중에 OnDrawDataCell 이벤트를 사용했습니다
:
: 아래함수를 실행하지 않습니다.
: TDBGrid 가, 로드되는 방식을 모르겠습니다.
:
:
: TDBGrid
: Name :DBGridPatients
:
:
: 1. 아래 이벤트 함수를 로드 하지 않습니다.
: void __fastcall TForm1::DBGridPatientsDrawDataCell(TObject *Sender, const TRect &Rect, TField *Field, TGridDrawState State)
: {
: ShowMessage("TForm1::DBGridPatientsDrawDataCell");
: AnsiString asID;
: asID = Field->AsString;
: // 주민 번호 13자리 판단
: if(asID.Length() == 13){
: Field->AsString = asID.SubString(1, 6) + "*******";
: }
:
: }
:
: 2.
: DBGridPatients->Recordset->Field //표시되지않습니다.
:
:
:
:
:
:
:
: 조대현.Clau 님이 쓰신 글 :
: : [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 에서 디비 쿼리 테스트하는 방법을 알고 싶습니다.
|