Q&A

  • treeview응용에 관련된 질문입니다.
트리뷰를 이용해서 세계시간을 나타내려고 하고있습니다.

예를들어 아시아라는 탑노드를 두고 홍콩,일본,싱가폴등의 서브노드를 두어

트리뷰의 change event에서 각 나라를 선택할때마다 그 나라의 시차값만큼을

연산해서 시간표시를 하려는 것이죠.

문제는 그 시차값을 어떻게 저장해뒀다 선택
1  COMMENTS
  • Profile
    최용일 2000.05.03 05:22
    안녕하세요. 최용일입니다.



    아마도 다른것은 다되는데 시차계산만 안되시는 것 같습니다.



    var

    CurrentDateTime: TDateTime; // 현재의 시간

    ResultDateTime: TDateTime; // 시차가 계산된 시간

    begin

    CurrentDateTime := Now;

    if TimeTerm < 0 then // TimeTerm 이게 시차 맞죠?

    ResultDateTime := CurrentDateTime - EncodeTime(-1 * TimeTerm, 0, 0, 0)

    else

    ResultDateTime := CurrentDateTime + EncodeTime(TimeTerm, 0, 0, 0)



    // 위의 순서는 잘못되었을 수도 있습니다. 저는 TimeTerm이 0보다 작으면 시차가

    // 더 느린것으로 계산했습니다.

    // ResultDateTime을 FormatDateTime, DateTimeToStr같은 함수를 이용해서

    // 뿌려주시면되죠. 시차를 계산하시면 날짜가 변경될 수도 있으므로 날짜도

    // 함께 표시되는것이 좋을듯 하네요.

    end;



    시차를 저장하는 곳은 어디라도 상관이 없습니다. 트리 노드의 StateIndex를 사용하지



    않는다면 StateIndex를 이용하셔도 괜찮죠.



    ^^ 항상 즐코하세요.



    최진석 wrote:

    > 트리뷰를 이용해서 세계시간을 나타내려고 하고있습니다.

    > 예를들어 아시아라는 탑노드를 두고 홍콩,일본,싱가폴등의 서브노드를 두어

    > 트리뷰의 change event에서 각 나라를 선택할때마다 그 나라의 시차값만큼을

    > 연산해서 시간표시를 하려는 것이죠.

    > 문제는 그 시차값을 어떻게 저장해뒀다 선택