QPixmap Как сравнить, одинаковы ли два растровых изображения (изображения) или разные

Привет, у меня есть этот проект QUI, основанный на игре «три в ряд». У меня проблема с проверкой, есть ли в строке 3 одинаковых изображения. я пытаюсь проверить, является ли следующая метка в строке одним и тем же изображением, и добавить ее к новому вектору, добавляя в данный момент, я не могу найти способ сравнить два изображения. Я пробовал chacheKey и несколько других методов, но они не работают. Если они одинаковы, я мог бы использовать любую помощь в этом проекте. Спасибо.

QPixmap pic_value = labels[y][x]->pixmap(Qt::ReturnByValue);
QPixmap pic_value2 = labels[y][x+1]->pixmap(Qt::ReturnByValue);

if (pic_value.cacheKey() == pic_value2.cacheKey())
{
 match_set.append(labels[y][x+1]);
}

person reetu    schedule 13.12.2020    source источник
comment
Возможно, было бы проще, если бы вы не сравнивали изображения, а вместо этого использовали некоторые другие данные, такие как перечисления или целые числа, для сравнения объектов.   -  person thuga    schedule 15.12.2020


Ответы (1)


Попробуйте следующий код:

if (pic_value.toImage() == pic_value2.toImage())

Ссылка: https://www.qtcentre.org/threads/13537-do-we-can-t-compare-QIcon-or-QPixmap

person Sprite    schedule 14.12.2020