|
안녕하세요..
지금 하시고자 하는일이 db의 특정 필드의 내용이 리스트 박스안에 나오게 하시고 싶으신거죠?
그럼 TDBListBox를 쓰시면 안됩니다.
TDBListBox는 테이블의 자료를 불러서 보여주는것이 아니라 미리 리스트박스에 값들을 등록시켜 놓고
DBGrid등에서 레코드를 이동했을경우 DBListBox에 있는 값들중 필드의 값과 일치하는 값으로 ItemIndex를
바꿔주는데 사용합니다. 혹은 변경시킬 레코드를 선택한후(그리드등에서) 리스트 박스의 아이템을 선택
하면 선택된레코드의 DBListBox와 연결된 필드의 값을 DBListBox에서 선택된 항목으로 바꿔주는 역할을
합니다. (도대체 무슨소린지.. 쩝..)
하여간 DBListBox는 생각하신것처럼 테이블의 내용을 보여주는 용도가 아니라는 것입니다.
테이블의 특정필드의 내용을 리스트 박스로 보시고 싶으시면 TDBLookupListBox를 쓰셔야 합니다.
TDBLookupListBox의 ListSource 프로퍼티를 해당 DataSource로 설정하신후 KeyField 프로퍼티를 선택하시면
DB안의 필드명들이 쭈욱 나올겁니다. 여기서 한 필드를 선택하시면 필드안의 내용이 리스트박스에 나오는것
을 확인하실수 있으실겁니다. 물론 TTable 콤포넌트의 Active 프로퍼티가 true가 된 상태에서 말입니다.
저도 잘은 모르지만 아는데까지만 적었습니다.
도움이 되셨길...
현모양처 님이 쓰신 글 :
: DBList에서 연결을 했는데.. 내용이 안나와요.. 왜 그렇져? db상에는 저장이 되는데.. 리스트에는 나타나지 않아요.. 왜 그렇져?
|