Я делаю карточную игру, в которой есть 4 слота карт вместимостью по 5 штук. Я использую ListView
для представления каждого слота. Позвольте мне сначала объяснить код, а затем мою проблему.Update ListView from another
class ClientCard : public QObject
{
Q_OBJECT
int code; // card code
int location; // zone in which card is located
...
ClientCard* equipTarget;
QSet<ClientCard*> equipped;
...
};
class ClientCardModel : public QAbstractListModel
{
enum CardRoles {
CodeRole = Qt::UserRole + 1,
LocationRole
}
...
QList<ClientCard*> m_list;
};
ClientCardModel
имеет список ClientCard
для ListView
и ролей для передачи кода и другого члена в QML. Позвольте мне представить каждый ListView
с зоной (например, zone1, zone2 и т. Д.). В игре карта может быть оборудована другими картами в других зонах. Карты, хранящиеся на карте, хранятся в QSet<> equipped
, а карта, в которой установлена карта, хранится в equipTarget
. При наведении на карту в зоне карты карты, оснащенные ею в других зонах, должны быть подсвечены с использованием изображения, пока мышь не останется на карте.
Любая идея оценивается.
Я не дома, здесь нет ноутбука, не могу представить пример прямо сейчас. Если вы можете подождать 24 часа, я вернусь, иначе сообщите мне, что не ясно, и я отвечу. – skypjack
Код будет полезен. –
Абсолютно, занят на работе, может быть, у меня будет шанс завтра, извините. – skypjack