Q&A

  • DBGrid 에 관하여..............
안녕하세요

델파이를 이제야 입문을 했습니다.

다름이 아니라 매입매출 프로그램을 짜려는데 dbgrid에서 숫자를 입력하면 자동으로 다음 셀에 합이나 곱이 나타나게 하고 싶습니다.

어찌 해야 될지를 몰라서 이렇게 글을 올립니다.

고수님들의 많은 지원 바랍니다.



이왕이면 예제두 보내 주시면 감사하겠습니다.

좋은 하루 되세요..꾸벅^^



greencat@bcline.com

greencat@sungam.co.kr

1  COMMENTS
  • Profile
    parkisu 2000.06.09 08:34
    윤재웅 wrote:

    > 안녕하세요

    > 델파이를 이제야 입문을 했습니다.

    > 다름이 아니라 매입매출 프로그램을 짜려는데 dbgrid에서 숫자를 입력하면 자동으로 다음 셀에 합이나 곱이 나타나게 하고 싶습니다.

    > 어찌 해야 될지를 몰라서 이렇게 글을 올립니다.

    > 고수님들의 많은 지원 바랍니다.

    >

    > 이왕이면 예제두 보내 주시면 감사하겠습니다.

    > 좋은 하루 되세요..꾸벅^^

    >

    > greencat@bcline.com

    > greencat@sungam.co.kr



    안녕하세요. 반갑습니다.

    저도 초보이지만 좀이나마 답답함을 풀어드리고 싶어 아는데로 적어보겠습니다.

    제가 pc방이라 소스를 보내드리는 건 힘들구요. 그냥 설명만 할께요.



    TTable을 사용하신다고 가정하고(TQuery도 마찬가지입니다)

    Table컴포넌트의 Databasename과 TableName을 주고 더블클릭하시면 FieldEditor가 나타날겁니다. 여기에 Add All Fields를 하십시오.

    그런다음 오른쪽 버튼 눌러서 New Fields...를 선택하십시오.

    필드추가 창이 뜨면 필드이름을 적당히주고 필드타입을 주시고(계산필드이니까 Integer나 Currency

    또는 Float형 중에 하나이겠죠?)

    Calculated Field에 체크하시고 확인을 누르시면 됩니다.



    다시 Table컴포넌트를 선택하신다음 이벤트중에 OnCalculateField(?)에 계산식을 코딩하시면 됩니다.

    예를 들어 가격필드의 값에 수량필드의 값을 곱한 값이 자동으로 계산되게 하려면



    Table1Total.AsFloat:= Table1Price.AsFloat*TableCount.AsInteger;

    이런 식으로 하시면 됩니다.





    만약 테이블에 계산식이 들어갈 수 있는 필드가 있는 경우라면 TTable의 AfterPost나

    BeforePost이벤트에 코딩하시면 됩니다.



    Table1.Edit;

    Table1.FieldByName('Total').AsFloat:= Table1.FieldByname('Price').asFloat*

    Table1.FieldByname('Count').asInteger;





    잘 모르시겠으면 parkisu@lycos.co.kr로 메일주세요.

    시간나면 예제라도 보내드릴게요.