crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> QHash --> QVariant ?
call_me_Frank
  опции профиля:
сообщение 28.3.2012, 17:39
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 73
Регистрация: 20.10.2010
Пользователь №: 2129

Спасибо сказали: 0 раз(а)




Репутация:   0  


Привет! вот такая тема: кто знает как правильно преобразовать QHash<QStr, QStr> (или QMap) в QVariant для передачи в сигнале? это нужно для того, чтоб сымитировать сигнал из QML-интерфейса, который карту передает, как QVariant...
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sidsukana
  опции профиля:
сообщение 29.3.2012, 6:11
Сообщение #2


Участник
**

Группа: Участник
Сообщений: 158
Регистрация: 23.12.2010
Из: Челябинск
Пользователь №: 2296

Спасибо сказали: 10 раз(а)




Репутация:   2  


Q_DECLARE_METATYPE не катит?

QHash<QStr, QStr> QHashType;

Q_DECLARE_METATYPE(QHashType)


Теперь в Qvariant он должен записывать без проблем, а чтобы из QVariant обратно, надо вот так

QVariant var;
QHashType hash;
...
if (var.typeName() == "QHashType")
    hash = var.value<QHashType>();

Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
call_me_Frank
  опции профиля:
сообщение 29.3.2012, 10:42
Сообщение #3


Студент
*

Группа: Участник
Сообщений: 73
Регистрация: 20.10.2010
Пользователь №: 2129

Спасибо сказали: 0 раз(а)




Репутация:   0  


сейчас попробую, может и прокатит :)

Цитата(call_me_Frank @ 29.3.2012, 11:27) *
сейчас попробую, может и прокатит :)


в сторону записи в QVariant заработало, но только я написал

typedef QHash<QStr, QStr> HashType;
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
sidsukana
  опции профиля:
сообщение 29.3.2012, 11:19
Сообщение #4


Участник
**

Группа: Участник
Сообщений: 158
Регистрация: 23.12.2010
Из: Челябинск
Пользователь №: 2296

Спасибо сказали: 10 раз(а)




Репутация:   2  


ну я это и имел ввиду)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 20.4.2024, 1:44