заблаговременно за чтение и помощь.Qt - отображение анимированного GIF, выбранного QListWidget на MainWindow
Я пытаюсь создать диспетчер GIF на основе QListWidget, где вы можете выбрать GIF из списка (используя на _ * _ itemClicked, как вы можете видеть ниже), и он появится в анимированном GIF в пространстве ниже список (или сбоку, не имеет значения).
void MainWindow::on_listOfURL_itemClicked(QListWidgetItem *item)
{
QLabel* lab = new QLabel(this);
QMovie* mov = new QMovie(":/res/giftest/C:/Users/Rober/Desktop/giftest.gif");
lab->setGeometry(200, 200, 200, 200);
lab->setMovie(mov);
lab->show();
mov->start();
}
Я попытался использовать кусок кода выше, но ничего не показывает. Это просто бесполезная попытка заставить его работать, поэтому путь GIF тот же, вам не нужно беспокоиться об этом.
Честно говоря, я искал много кода на форумах и на этом самом сайте относительно GIFS и анимаций, и ни одна из вещей, которые я видел, не работала для меня.
Как я могу продолжить? Я предполагаю, что я должен использовать графический QWidget в пользовательском интерфейсе и связать его с функцией на _ * _ itemClicked, чтобы он отобразил местоположение изображения из QListWidgetItem и отобразил, где я указал в пользовательском интерфейсе.
Я получил код наклеен здесь серфинга Могучего Google, и это приносит мне некоторые сомнения:
- создать QLabel с MainWindow как родитель. Хорошо, но где он появится?
- Могу ли я создать в конструкторе виджет, который я могу определить, где он будет, и просто сделать работу GIF?
Я думаю, что правильно объяснил себя, если не просто дайте мне знать.
EDIT: Я думаю, что мне нужен QLabel, который находится внутри MainWindow, под списком URL. Как я могу создать QLabel в QtDesigner, а затем взять тот же QLabel в коде и манипулировать им с GIF?
Я включил то, что вы говорите, даже IsValid(). Похоже, что GIF действителен, но он не показан. –