Этот урок посвящен компоненту QListWidget в Qt Creator. Создадим список элементов, добавим функциональность выбора и стилизации.
Создание списка
Создадим новый проект или воспользуемся проектом из предыдущего урока. Перетащим виджет QListWidget на форму. Для улучшения внешнего вида выберем само окно, затем компоновку и нажмем «Скомпоновать по вертикали». Добавим кнопку «Выбрать элемент». QListWidget предназначен для отображения и выбора элементов из списка.
Добавление элементов
В исходном файле .cpp, в методе MainWindow, добавим код для заполнения списка, используя метод addItem():
listWidget->addItem("Алге");
listWidget->addItem("Бенда");
listWidget->addItem("Мальва");
listWidget->addItem("Фото");
После сохранения и запуска проекта, в списке появятся четыре элемента. Кнопка «Выбрать элемент» пока неактивна.
Функциональность кнопки
Создадим слот для кнопки «Выбрать элемент» в Qt Designer. В этом слоте будем выводить выбранный элемент в statusBar:
statusBar()->showMessage(ui->listWidget->currentItem()->text());
Этот код получает текущий выбранный элемент (currentItem()) из QListWidget и выводит его текст (text()) в строку состояния.
Добавление картинок
Для добавления картинок к элементам, создадим объекты класса QListWidgetItem:
QListWidgetItem *item1 = new QListWidgetItem;
item1->setIcon(QIcon("путь/к/картинке/exit.png"));
item1->setText("Audi");
ui->listWidget->addItem(item1);
// Аналогично для остальных элементов...
Укажите правильный путь к файлу изображения.
Стилизация
Воспользуемся методами setBackgroundColor() и setForegroundColor():
ui->listWidget->currentItem()->setBackgroundColor(QColor(Qt::blue));
ui->listWidget->currentItem()->setForegroundColor(QColor(Qt::white));
Это изменит цвет фона и текста выбранного элемента при нажатии кнопки.
В этом уроке мы изучили компонент QListWidget: добавление элементов, картинок и стилизацию. QListWidget — мощный инструмент для создания интерактивных списков в приложениях Qt.