Russian Qt Forum
Ноябрь 25, 2024, 01:45 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QMap и Qlist  (Прочитано 3923 раз)
virtual_root
Гость
« : Июль 10, 2012, 18:17 »

и снова здравствуйте) Не могу понять почему компилятор ругается на мой код:
Код:
QMap<QString,QVariant> map;
 // получаем список активных окон
    QList<QMap<QString,QVariant> > listwindow = m_windows->GetListActivityWindow(true);
    map["windows"] = listwindow;   // ругается на эту строчку

Вроде у меня QVariant а всё равно ругается.. Почему?
Записан
virtual_root
Гость
« Ответ #1 : Июль 10, 2012, 18:22 »

Как бы мне так запихнуть этот список в QMap ?  Может кто подскажет? И чтоб при этом можно было и другие типы напихать)
« Последнее редактирование: Июль 10, 2012, 18:23 от virtual_root » Записан
mutineer
Гость
« Ответ #2 : Июль 10, 2012, 18:25 »

А читать ругательства пробовала?
Записан
alexis031182
Гость
« Ответ #3 : Июль 10, 2012, 18:29 »

Согласен с компилятором, чего бы и как тот не ругал
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #4 : Июль 10, 2012, 18:54 »

и снова здравствуйте) Не могу понять почему компилятор ругается на мой код:
Код:
QMap<QString,QVariant> map;
 // получаем список активных окон
    QList<QMap<QString,QVariant> > listwindow = m_windows->GetListActivityWindow(true);
    map["windows"] = listwindow;   // ругается на эту строчку

Вроде у меня QVariant а всё равно ругается.. Почему?
В правой части "value" для QMap <QString,QVariant>, значит ожидается тип QVariant, а у Вас listwindow имеет тип QList. Нет конструктора QVariant принимающего Ваш QList. Значит ошибка
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #5 : Июль 10, 2012, 18:55 »

компилятор как бы намекает

map["windows"] типа QVariant

listwindow типа QList<QMap<QString,QVariant> >

преобразование само по себе не произойдет  Улыбающийся

QVariant::fromValue(listwindow)
Записан
virtual_root
Гость
« Ответ #6 : Июль 11, 2012, 10:27 »

спасибо ребят, решила свою проблему по-другому:
Код:
 QMap<QString,QVariant> window;
 QList<QVariant> listwindow;
listwindow.append(window);
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.051 секунд. Запросов: 22.