|
심심 님이 쓰신 글 :
: 매번 질문만 올리는데도.. 이렇게 제 글에 관심가져주신님 감사드립니다.
: 엘리어스를 칭해서 말하고 싶지만 한두분도 아니고 또 답변주셔서 감사를 드린다는 너무 계산적인거 같고... 그래서 매번 도움을 받으면서도 감사의 인사 한번 정식으로 못드렸군요....
: 질문은요.... --ㆀ 다른님이 프로그램을 하나 짜 주셨는데요.. 폼위에 리스트가 두개 있는거요... 근데 제가 다른코딩을 좀 추가할려고 했더니... 이 리스트 컨트롤들이 포커스를 안받더군요.... 그러니까 아예 실행시부터 마우스나 탭은 상관없도록 프로그램되어 있더라구요.... 제가 할려는건 이 리스트컨트롤에 올라간 리스트를 삭제할려고.. 그럴려면 그리스트가 일단 파란색으로 선택이 되어야 하잔아요... 근데 그게 안되요.... 주변에 프로그램하시는 친구나 선배도 없고... 고수님들의 따뜻한 조언 부탁드립니다.
: 답변미리 감사드릴께요..... 그리고 즐거운 하루 되세요....... (__)
안녕하세요. 홍성진 입니다.
제가 문제를 확실히 인지했는지는 모르겠지만, 리스트박스로 답변드리겠습니다.
우선, 리스트박스에 포커스를 주려면
ListBox1->SetFocs();
를 호출하면 됩니다.
근데, 이것은 단지 컴포넌트가 포커스를 갖는것이지 아이템을 선택하는 것은 아닙니다.
리스트 박스의 경우 선택된 아이템에 대해 ItemIndex값을 가집니다.
이것은 0부터 시작합니다.
프로그램이 시작하자마자 아이템이 선택되도록 하고 싶으면..
OnShow()에서..
ListBox1->ItemIndex = 0; //우선 아이템을 선택합니다.(첫번째 아이템 선택)
ListBox1->SetFocus(); //그리고 포커스를 줍니다. 이것은 안해줘도 상관없습니다.
//SetFocus는 폼의 OnCreate에서 하면 안됩니다. 활성화가 안된 윈도우에
//포커스를 주라고 하면 윈도우가 뭐라고(--;) 합니다..
그럼..
|