У меня есть QHBox с пользовательским виджетом, который наследует QLabel, который перебирает все файлы изображений в каталоге и создает миниатюру.
Эта часть работает нормально, однако мне нужно реализовать функциональность для отображения исходного изображения, из которого была создана миниатюра, в центральном виджете QLabel для отображения изображений.
Как лучше всего это сделать? Прямо сейчас сигнал clicked() отображает только QPixmap из QLabel (миниатюра), мне нужно, чтобы он загружал исходное полноразмерное изображение в QLabel, который находится в центре.
Я предполагаю, что мне понадобится какой-то список, чтобы идентифицировать каждую миниатюру с ее уникальным полноразмерным изображением, но я не уверен, как реализовать такую вещь.
Пожалуйста, посоветуйте мне, следует ли мне реализовать это, поскольку я чувствую, что немного потерялся в том, что делать.
Мой код сейчас выглядит так:
QList<ImageLabel *> labels;
int imagenum = 0;
foreach(const QString &path, files) {
QPixmap px(path);
labels.append(new ImageLabel);
labels[imagenum]->setPixmap(px.scaledToHeight(90));
qhbox->addWidget(labels[imagenum]);
connect(labels[imagenum], SIGNAL(clicked(const QPixmap&)), this, SLOT(setImage(const QPixmap &)));
imagenum++;
}
Спасибо заранее за вашу помощь.