제 폼에는 확인 가능한 QListWidgetItems가 포함 된 QListWidget이 있습니다. QListWidgetItem의 이벤트를 체크/체크하지 않는 이벤트를 캡처하는 방법을 찾고있다. 나는 그런 신호가 존재하지 않는다고 보지만 어쩌면 내가 틀렸다는 것을 알 수있다. 현재 내가하고있는 일은 QListWidget :: itemClicked() 신호를 사용하고 QListWidgetItem의 checkState를 확인하는 것입니다. 그러나이 이벤트는 항목이 클릭 될 때마다 발생하기 때문에 원하는 것은 아닙니다. 체크 표시가 전환 된 것이 아닙니다. . 누구든지 도움을 줄 수 있습니까? 감사!Qt/C++ : QListWidgetItem이 선택되었을 때의 신호입니까?
14
A
답변
18
분명히 그러한 신호는 제공되지 않으므로 QListWidget::itemChanged(QListWidgetItem* item)
을 사용하고 그 결과로 item->checkState()
을 스캔하는 것이 가장 좋습니다. 사용에 약간의 개선이 있어야합니다. itemClicked
+0
보호 된 신호입니다. 나는이 오류를 [여기] (https://stackoverflow.com/q/48059796/1080355)와 같이 사용하면 오류가 발생합니다. – VSB
0
추가 옵션은 QListView
으로 자신의 QAbstractListModel
을 사용하는 것입니다. 처음에는 자신 만의 관리 코드를 추가해야하므로 추가 코드가 추가되었습니다. 그러나 당신은 더 낮은 수준의 접근을 얻습니다. 기본적으로 QListView
이 할 일을 물어볼 것입니다. 또한 입력을 사용자의 목록 모델에 다시 전달하여 사용자가 연결할 수 있습니다.
또는 QStandardItemModel
의 하위 클래스로 변경하여 확인란을 변경하는 것과 관련된 특정 수정 사항을 얻을 수 있습니다.
관련 문제
- 1. 이것은 힙 조각화의 신호입니까?
- 2. TreeViewItem이 선택되었을 때 템플릿 변경
- 3. Tab Bar Item이 선택되었을 때 이벤트
- 4. UITableViewCell이 선택되었을 때 textLabel을 어떻게 변경합니까?
- 5. 체크 박스가 선택되었을 때 버튼을 비활성화하는 방법
- 6. UIPickerView에서 특정 행이 선택되었을 때 UIImageView 변경하기
- 7. 체크 박스가 선택되었을 때 텍스트 영역에 값을 추가하는 방법
- 8. 체크 박스가 선택되었을 때 자바 스크립트 함수를 호출하는 방법
- 9. 확인란이 선택되었을 때 자동 채우기 텍스트 상자 - Jquery
- 10. EditText가 선택되었을 때 소프트 키보드를 표시하는 방법은 무엇입니까?
- 11. 체크 박스가 선택되었을 때 테이블 열 텍스트의 색 변경
- 12. 1이 선택되었을 때 다른 목록 상자의 선택을 취소하는 방법
- 13. usercontrol이 선택되었을 때 ASP.NET 페이지에서 컨트롤을 해제하는 방법은 무엇입니까?
- 14. 라디오 버튼이 체크되어 있지 않을 때의 모니터링
- 15. ipad 앱이 ipad에서 완벽하게 실행되지만 시뮬레이터에서는 완벽하게 실행되지 않는다는 것은 나쁜 신호입니까?
- 16. MemoryDC를 사용할 때의 문제
- 17. 링크를 클릭했을 때의 팝업
- 18. Registry.LocalMachine.OpenSubKey를 사용할 때의 SecurityException
- 19. Uploadify를 사용할 때의 문제점
- 20. wxRuby를 사용할 때의 문제점
- 21. exe가 시작될 때의 모니터
- 22. Graphics.DrawString을 사용할 때의 차이점
- 23. CustomListView를 사용할 때의 의문점
- 24. MakeFile을 실행할 때의 문제
- 25. preg_replace_callback을 사용할 때의 문제점
- 26. 양식 닫을 때의 동작
- 27. 페이지를 삭제할 때의 오류
- 28. 스프링을 사용하지 않을 때의 문제점
- 29. PVRTC 텍스처를 사용할 때의 문제
- 30. Query Builders를 사용할 때의 이점
나는 QListWidget :: itemChanged() 신호를 사용하여이 문제를 해결할 수 있다고 생각하는데, 이는 아이템을 체크/체크 해제 할 때 트리거되지만, 아이템의 값을 편집하면 트리거 될 것이다. 지금은 안되지만, 여전히 불완전한 해결책입니다. – Joseph
'QListWidget :: itemClicked()'의 또 다른 문제점은 키보드를 사용할 때 Space 키를 사용하여 선택 상태를 변경하는 것과 같이 실행되지 않는다는 것입니다. – Hossein