Q&A

  • dbgrid에서의 값 입력...
단도직입적으로 질문들어 갑니다. --;



dbgrid에서 값을 입력하면 자동으로 편집모드로 바뀝니다. 맞죠?



그렇게 해서, 값을 입력하고 엔터를 치면 지금 입력한 값이 그리드에 보여야 합니다.

맞나여?



예)

1 4 7

2 5 8

3 6 9

여기서 5라는 곳에 내가 10이라 입력을 하고, 엔터를 했다.

그러면, 화면에는 10이라는 값이 보여야 한다. 맞죠?



그런데, 새로운 값(10)이 보이지 않고 에전값(5)이 보입니다.



DBNavigator에서 저장 버튼을 누르면 그제서야 새로운 값(10)이 화면에 보입니다.



요게 맞는건가여?



만약, 이게 정상적인거라면 새로운 값을 입력하고 엔터를 하면 새로운값을 화면에 보이고 싶은데 이건 어떻게 하나여?



참고로 delphi6 ent를 사용중입니다.

2  COMMENTS
  • Profile
    나그네 2001.07.31 03:26
    TDBGrid의 최대의 단점입니다.

    해결할 수 있는 방법은 OnKeyPress에서 다음 칼럼으로 강제로 이동시키는 방법밖에 없습니다.



    irookie wrote:

    > 단도직입적으로 질문들어 갑니다. --;

    >

    > dbgrid에서 값을 입력하면 자동으로 편집모드로 바뀝니다. 맞죠?

    >

    > 그렇게 해서, 값을 입력하고 엔터를 치면 지금 입력한 값이 그리드에 보여야 합니다.

    > 맞나여?

    >

    > 예)

    > 1 4 7

    > 2 5 8

    > 3 6 9

    > 여기서 5라는 곳에 내가 10이라 입력을 하고, 엔터를 했다.

    > 그러면, 화면에는 10이라는 값이 보여야 한다. 맞죠?

    >

    > 그런데, 새로운 값(10)이 보이지 않고 에전값(5)이 보입니다.

    >

    > DBNavigator에서 저장 버튼을 누르면 그제서야 새로운 값(10)이 화면에 보입니다.

    >

    > 요게 맞는건가여?

    >

    > 만약, 이게 정상적인거라면 새로운 값을 입력하고 엔터를 하면 새로운값을 화면에 보이고 싶은데 이건 어떻게 하나여?

    >

    > 참고로 delphi6 ent를 사용중입니다.

  • Profile
    성더기 2001.07.30 23:47
    질문 내용을 보니 테이블컴포넌트를 사용하시는거 같은데 맞나여?..^^

    기본적으로 Enter키는 Post(실제 데이터 베이스에 기록하는 프로시져)를 발생시키지 않습니다..

    궁금하심 SQL-Explorer에서 값을 수정하시구 Enter해보셈 구럼 수정하기 전의 값이

    나타납니당..^^



    근데 Enter키를 눌렀을때 저장을 하고 싶으시면

    DbGridKeyPress이벤트에

    if Key = VK_RETURN then // 맞나?..ㅡㅡ;;

    Table1.Post;

    라구 써주심 될겁니당



    구럼 이만..