|
문성훈 님이 쓰신 글 :
: 안녕하세요. StringGrid를 쓰려고 합니다.
:
: 자료가 엄청 많아서 Search 기능이 필요한데, FindDialog를 쓰려 했는데
:
: 여의치 않았습니다.
:
: 제가 뭔가 실수를 해서 그런 지도 모르겠군요.
:
: FindDialog를 폼에 붙이고
:
: FindDialog1->Execute();
:
: 를 했습니다.
:
: find 창이 떴고, 원하는 문자열을 입력했지만
:
: 그냥 꿈쩍도 않고 가만히 있었습니다.
:
: 제가 Find 기능을 따로 구현 해야 하는 겁니까?
임펠리테리입니다.
TFindDialog는 단지 찾기 창만을 보여줄 뿐, 실제 검색을 위해서는 직접 코딩을 해야 합니다. TFindDialog의 "다음찾기" 버튼을 누르면 TFindDialog::OnFind 이벤트가 발생하므로 이 이벤트의 핸들러를 만들어서 실제로 검색하는 코딩을 해야 합니다.
또한 리치에디트 컨트롤에는 FindText()라는 검색 함수가 있으므로 간단히 이 함수를 쓰면 됩니다만, 스트링그리드의 경우에는 검색 함수가 없으므로 Cells 프로퍼티를 루프를 돌면서 직접 비교하는 수밖에 없습니다.
그럼 참고하시길...
|