|
소심남 님이 쓰신 글 :
: DBGrid를 사용해서 간단한 전화번호부를 만들고 싶은데요..
: 프로그램을 실행시켜서 DBGrid로 불러들인 값을 편집할 수 없습니다.
: 어떻게 해야 하나요..?
: (속성중에 ReadOnly를 false로 했는데로 안돼더라구요.. ㅡㅡ;)
:
: 그리고 한가지 더..
: 그리드에 있는 특정 쎌의 값을
: EditBox컴퍼넌트 같은데루 가져 올 수 없나요...?
:
: StringGrid의 경우..
: Edit1->Text = StringGrid1->Cells[5][10];
: 같은 방식으로 하면 되잖아요..?
:
: 읽어 주셔서 감사합니다.
: 꼭, 도움 부탁드려요..
안녕하세요.
DBGrid를 편집하시려면 ReadOnly프로퍼티와 함께 Option항목의
dgEditing 을 true로, dgRowSelect를 false로 설정해 주셔야 합니다.
소심남(?) 님께서는 아마 두가지의 프로퍼티를 다르게 설정해 주셨거나
아니면 해당 DBGrid가 연결되어 있는 해당 TQuery혹은 TTable
의 ReadOnly프로퍼티가 false로 되어 있거나 아니면 데이터베이스
연결을 위해서 TDatabase 컴퍼넌트를 사용하셨다면, TDatabase의 ReadOnly프로퍼티
를 false로 설정하셨을 수도 있습니다.
각 디비 그리드의 상위 컴퍼넌트의 설정을 확인하신 다음 디비그리드의 옵션 항목을
확인해 보시면 되겠군요.
그리고 두번째 질문은 더욱 쉽습니다.
스트링그리드의 경우에는 특정 셀의 값을 코딩 상에서 읽어서 뿌려주셔야 하는데
DBGrid의 값을 불러들이고 싶으실 때에는 불러들이고 싶은
해당 필드가 있겠죠? TDBEdit를 하나 올려 놓으신 다음 DBGrid에서 연결하는
TDataset을 그대로 연결하신 다음, 뿌려주고 싶으신 필드를 선택하시면
코딩 한 줄 없이도 디비의 커서에 따라서 해당 레코드의 해당 필드의 값을
뿌려줍니다. 물론 TDBEdit의 ReadOnly값 설정에 따라서 해당 필드를 수정하실수도
읽기 전용으로 불러올 수도 있습니다.
만일 위의 과정에 익숙하지 않으시다면 다시 질문해 주세요.
그럼.
|