qlistwidget 예제

전체 예제를 실행하려면 이미지로 가득 찬 디렉토리가 있어야 합니다. 예를 들어 내 리눅스 배포판의 /usr/share/icons 디렉토리에 하나를 사용 했습니다. 이 함수는 목록 위젯 항목 대신 정적 콘텐츠를 표시하는 데만 사용해야 합니다. 사용자 지정 동적 콘텐츠를 표시하거나 사용자 지정 편집기 위젯을 구현하려면 대신 QListView 및 하위 클래스 QStyledItemDelegate를 사용합니다. 또는 목록으로 만들 수 있습니다., 이 경우 자동으로 목록에 추가 됩니다: 다시 구현: QAbstractItemView::setSelectionModel (QItemSelectionModel *선택 모델). 즉, 신호에 연결에 QListWidgetItem * 인수가 있어야 합니다. 보다 유연한 목록 보기 위젯을 사용 하 여 표준 모델QListView 클래스를 사용 합니다. QListWidget은 분명히 매우 간단한 위젯이며 많은 옵션을 제공하지 않습니다. 충분 하지 않습니다 사용 사례많이 있다. 이러한 경우 다음 기사에서 설명할 QListView를 사용할 수 있습니다.

QListWidget의 생성자는 많은 QWidget 하위 개체와 같으며 선택적 부모 인수만 사용합니다. 그런 다음 현재 항목이 변경될 때 호출할 슬롯 함수를 만들어야 합니다. 그것은 인수, curr 및 이전, 현재 및 이전에 선택한 항목을 가지고, 현재 항목의 텍스트로 항목의 텍스트를 설정해야합니다 : 생성자에서 우리는 모든 위젯을 초기화, 데이터 목록 위젯을 채우기, 필요한 레이아웃을 만들고 연결. 슬롯에 신호를 연결할 때 서명이 일치해야 합니다. 즉, 슬롯에 신호보다 더 많은 매개 변수가 있을 수 없습니다. 신호 슬롯 설명서Qt에는 간결성과 편의를 위해 단일 열 목록 선택기 컨트롤을 허용하는 몇 가지 위젯이 있습니다. 가장 유연한 방법은 프로그래머가 정의해야 하는 매우 유연한 목록 모델에서 UI 보기를 제공하는 QListView를 사용하는 것입니다. 더 간단한 방법은 목록 상자에 대한 일반적인 사용 사례를 처리할 수 있는 미리 정의된 항목 기반 모델이 있는 QListWidget을 사용하는 것입니다. 간단한 QListWidget부터 시작하겠습니다. QListWidgetItem의 생성자에서 텍스트 또는 아이콘과 텍스트를 지정할 수도 있습니다.