Q&A

  • paradox의 date type을 yyyy/mm/dd로...
파라독스 의 date type field가 dbgrid상에 display될때

yyyy/mm/dd형식으로 뿌려지게 할려면 어떻게 해야 하나요..??



field의 edit mask를 편집해도 안되고 bde configuration의

system설정부분의 날짜형식을 수정을 해도 안되니..??

쩝.. 어떻게 하는지 아시는 분 계십니까?

1  COMMENTS
  • Profile
    박흥태 1999.08.13 00:49
    송기원 께서 말씀하시기를...

    > 파라독스 의 date type field가 dbgrid상에 display될때

    > yyyy/mm/dd형식으로 뿌려지게 할려면 어떻게 해야 하나요..??

    >

    > field의 edit mask를 편집해도 안되고 bde configuration의

    > system설정부분의 날짜형식을 수정을 해도 안되니..??

    > 쩝.. 어떻게 하는지 아시는 분 계십니까?



    이거는요....

    제가 예를 들어서 설명을 드릴께요...



    DataSet1 (뭐 Table이나 Query나 상관없음) -> DataSource1 -> DBGrid1식으로

    연결되어 있고, 바꾸고자하는 Date형 필드가 DataSet1의 두번째 필드라면,



    이 두번째 필드의 이벤트 OnGetText를 설정해줘야 합니다.



    OnGetText의 선언은 아래와 같구요.

    type TFieldGetTextEvent = procedure(Sender: TField; var Text: string;

    DisplayText: Boolean) of object;

    property OnGetText: TFieldGetTextEvent;



    1. 먼저 다음과 같은 프로시져를 하나 생성합니다.



    procedure TForm1.DBGrdFmtDate(Sender: TField; var Text: string;

    DisplayText: Boolean);

    begin

    Text := FormatDateTime('YYYY/MM/DD', Sender.AsDateTime);

    end;



    2. 해당 필드와 위와 같이 작성된 프로시져를 연결시킵니다.



    DBGrid1.DataSource.DataSet.Fields[1].OnGetText := DBGrdFmtDate;

    (이때 주의할 점은 DataSet1이 열려진상태(즉, Active = True)인 상태여야

    합니다.)



    그리고 나면 원하는 형태의 결과를 얻을수 있습니다.



    즐거운 하루되시기를......