Visual C++ 6.0의 ctreecntrl에서 treeitems의 체크 박스를 활성화/비활성화하려고합니다. 나는 모든 항목에 대해 그렇게 할 수있는 옵션을 찾았지만 항목별로 그 옵션을 설정할 수는 없었다. 거기에 할 수있는 기능이 있습니까?ctreecntrl의 treeitems에서 체크 박스를 활성화하십시오.
2
A
답변
4
개별 트리 항목의 체크 박스를 켜고 끄려면 TVM_SETITEM
messages을 보내야합니다.이 트리는 TreeView의 항목에 대한 속성을 설정하는 데 사용됩니다.
설명서에 따르면 wParam
은 0이어야하며 lParam
은 새 항목 속성이 포함 된 TVITEM
structure에 대한 포인터입니다.
따라서 진짜 전투는 TVITEM
구조가 적절하게 채워지는 것입니다. 중요한 부분은 다음과 같습니다.
hItem
구성원은 수정하려는 트리 항목의 핸들을 포함해야합니다.- 구성원은 으로 설정해야합니다. 이는
state
및stateMask
구성원이 유효 함을 나타냅니다. 그것들은 체크 박스를 켜고 끄는 데 사용할 것입니다. state
구성원을 0으로 설정할 수 있습니다. 지정된 트리 항목의 확인란을 숨 깁니다.
트리 항목의 확인란을 표시하려면이 구성원을1 << 12
으로 설정하십시오. 자세한 내용은 docs을 참조하십시오.- 회원의은 항목의 상태 이미지 색인을 변경한다는 것을 나타 내기 위해
TVIS_STATEIMAGEMASK
으로 설정해야합니다. 당신 만state
및stateMask
멤버를 사용하는 것을 나타 내기 위해서mask
을 설정 한 이후 는
, 당신은 행복하게 회원의 나머지 부분을 무시할 수 있습니다.
마지막으로 TVITEM
구조가 설정되면 표준 SendMessage
함수 또는 TreeView_SetItem
macro 함수를 사용하여 트리 항목에 메시지를 보낼 수 있습니다.
(물론, 전체 트 리뷰는 일을 위의에 대한 순서로 TVS_CHECKBOXES
style 설정이 있어야합니다!하지만 당신은 이미 그 작업을 수행하는 방법을 알아 냈다고 말했다.)
관련 문제
- 1. 필드 유형을 해석하여 C에서 체크 박스를 활성화하십시오 #
- 2. 체크 박스를 체크 검증
- 3. 섬네일 대신 LI를 클릭하여 라이트 박스를 활성화하십시오.
- 4. 클래스가있는 체크 박스를 제외한 모든 체크 박스를 선택 취소 하시겠습니까?
- 5. 체크 박스를 설정 한 프로그램과 체크 박스를 클릭하는 사용자를 구별하십시오.
- 6. 체크 박스를 링크로 만드시겠습니까?
- 7. 은 체크 박스를
- 8. 마지막 체크 박스를 받으십시오
- 9. 모든 체크 박스를 선택하십시오
- 10. 편집란에서 체크 박스를 선택했습니다.
- 11. 체크 박스를 선택하거나 해제하십시오
- 12. 체크 박스를 클릭 한 후 체크 박스를 체크 표시/체크 해제하지 않습니다.
- 13. 모든 체크 박스를 체크/체크하지 않음
- 14. 선택한 요소가있는 체크 박스를 체크 표시로 표시
- 15. 체크 표시하지 않고 체크 박스를 봅니까?
- 16. 체크 박스를 반복하고 체크 표시가있는 경우
- 17. 사용자가 체크 한 체크 박스를 체크하지 않음
- 18. 조건부 체크 박스 목록에서 체크 박스를 선택하십시오.
- 19. 체크 박스를 사용하여보기에서 무언가를 체크 표시하는 방법?
- 20. jQuery에서 모든 체크 박스를 찾는다.
- 21. mysql 결과에서 체크 박스를 체크한다.
- 22. 체크 박스를 체크하면 어떻게 지워지나요?
- 23. ASP.NET MVC 체크 박스를 동적으로
- 24. 체크 박스를 눌러도 발사하지 않습니다.
- 25. PyQt4에 체크 박스를 동적으로 추가했습니다.
- 26. 체크 박스를 확인할 수 없음
- 27. IronPython의 문자열에 체크 박스를 바인딩합니다.
- 28. 체크 박스를 사용하여 수신자 활성화
- 29. Jquery 선택된 체크 박스를 얻으십시오
- 30. 선택 체크 박스를 변환 (펄)