Q&A

  • Ttable 에서 Tdbedit 로 자료검색
안녕하세요.

데이터베이스 프로그램을 짜는 데 잘 모르는 부분이 있어서요..



dbedit 가 세개가 있구여. 각각에는 이름, 주소, 전화번호 가 기입됩니다.

실행중에 dbedit1 의 내용을 바꾸고 엔터를 치면 검색을 해서

dbedit2와 3에는 그사람의 주소와 전화번호로 바뀌게 하고 싶어요.

근데 이부분이 잘 안되여...



procedure TForm1.DBEdit1KeyDown(Sender: TObject; var Key: Word;

Shift: TShiftState);

begin

if key=vk_return then

table1.locate('name',dbedit1.text,[locaseinsensitive]);

end;



이렇게 하면 아무런 반응도 안보여요..--;

별도의 Tedit 를 써서 하면 되지만 위의 방법대로 해보고 싶어요.

꼭 도와주세요..

1  COMMENTS
  • Profile
    모승열 1999.06.29 11:18
    이용태 께서 말씀하시기를...

    > 안녕하세요.

    > 데이터베이스 프로그램을 짜는 데 잘 모르는 부분이 있어서요..

    >

    > dbedit 가 세개가 있구여. 각각에는 이름, 주소, 전화번호 가 기입됩니다.

    > 실행중에 dbedit1 의 내용을 바꾸고 엔터를 치면 검색을 해서

    > dbedit2와 3에는 그사람의 주소와 전화번호로 바뀌게 하고 싶어요.

    > 근데 이부분이 잘 안되여...

    >

    > procedure TForm1.DBEdit1KeyDown(Sender: TObject; var Key: Word;

    > Shift: TShiftState);

    > begin

    > if key=vk_return then

    > table1.locate('name',dbedit1.text,[locaseinsensitive]);> 별도의 Tedit 를 써서 하면 되지만 위의 방법대로 해보고 싶어요.

    > 꼭 도와주세요..



    > end;

    >

    > 이렇게 하면 아무런 반응도 안보여요..--;



    Index가 잡히지 않았나 봅니다.

    그리고 인덱스가 있다면

    table1.findkey([dbedit1.text]);

    이렇게 하는것이 더 좋은듯...

    그리고 질문에 애매모호한 부분이 있는데요..

    dbedit에서 바로 쓰면 findkey하는 순간 table은 cancel상태로 돌아가구

    원래dbedit있던 내용으로 돌아가버리기 때문에 과연 될까...하는 생각입니다.