안녕하세요. 이제 막 델파이에 들어선 초보입니다.
간단한 프로그램을 하나 만들었는데요 제 메인 폼에서 사용하는 콤보박스의 아이템 인텍스 초기값이 자꾸 -1로 변경이 되어서 프로그램 수행도중 Range 초과 에러를 냅니다. 폼 디자인시 콤보박스 안에는 1,2,3,4 로 정의하고 초기 3번으로 지정하였습니다. 혹시나 해서 메인폼 생성시 이 콤보 박스의 초기값을 다시 3으로 지정했는데 다른 콤보박스에서 이 콤보박스의 인덱스를 읽으면 2가 아니라 -1로 리턴 됩니다. 어째서 그런걸까요? 콤보박스의 이벤트는 OnSelect를 사용했습니다. 알려주시면 감사하겠습니다. 그럼 즐프하세요.
정확하게 왜 그런지 잘 모르겠지만,
콤보박스의 스타일을 csDropDownList로 변경해서 사용해 보세요.
csDropDown 스타일은 콤보 상태에서 편집을 해서 내용이 변경되면, 인덱스가
-1을 가리키게 됩니다. csDropDownList 의 경우, 처음에 지정을 하지 않은
경우에만 -1을 가리카고 한번 선택하면 다시 -1을 가리키는 경우가 없습니다.