Добавление смайликов в QT
Здраствуйте. Пишу чат на QT и хочу добавить смайлики как в телеграмме. У меня есть кнопка, на которую нажимаешь, и должны появляться все смайлики, смайлики сейчас находяться в listWidget. Но есть проблема, там они отображаються как список, что в принципе и понятно. А я хочу, чтобы было как например в телеграмме, в строке находились несколько смайликов, на следуещей еще и т.д. Как мне это реализовать?Нужно писать сообственный виджет или можно обойтись уже встроенными? Заранее спасибо за ответ.
(я пока что добавила только один смайлик, и он у меня храниться в векторе QVector smiles. lineEdit это поле в котором я пишу сообщение)
Вот код:
void MainWindow::on_pushButtonSmile_clicked()
{
ui->listWidgetSmile->clear();
ui->listWidgetSmile->addItem(smiles[0].toUtf8());
}
void MainWindow::on_listWidgetSmile_itemClicked(QListWidgetItem *item)
{
ui->lineEdit->setText(ui->lineEdit->text()+item->text());
}
Ответы (1 шт):
Я бы использовал в виде контейнера QTableView и описал собственную модель данных. Если нормально описать, то помимо банального отображения сеткой, вы сможете и динамически изменять количество смайлов в строке, изменять размер смайлов (чего даже телега не умеет) и т.д.