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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: обновление иконки и setWindowIcon  (Прочитано 9420 раз)
BuRn
Гость
« : Сентябрь 14, 2015, 18:57 »

Добрый день! Может кто подскажет, почему при первой установке иконки через setWindowIcon все ок, а вот если я ее начинаю менять, и применяю повторно setWindowIcon, то вижу по прежнему ту иконку, которую загрузил первый раз?
Записан
Bepec
Гость
« Ответ #1 : Сентябрь 14, 2015, 20:54 »

На основании приведённого вами кода и проверок на наличие файлов/ресурсов я могу сказать - ХЗ )
Записан
BuRn
Гость
« Ответ #2 : Сентябрь 14, 2015, 21:20 »

На основании приведённого вами кода и проверок на наличие файлов/ресурсов я могу сказать - ХЗ )
Ну а что там, все просто, если сделать
qApp->setWindowIcon(QIcon("/home/blablabla/1.png"))
А потом следом сделать
qApp->setWindowIcon(QIcon("/home/blablabla/2.png"))
То в итоге будет установлена первая картинка
Записан
PimenS
Крякер
****
Offline Offline

Сообщений: 371


Просмотр профиля
« Ответ #3 : Сентябрь 15, 2015, 06:53 »

В Win 8.1, Qt 5.5 все работает нормально.

Код:
    
    qApp->setWindowIcon(QIcon(":/images/icon_1.png"));
    qApp->setWindowIcon(QIcon(":/images/icon_2.png"));

Устанавливает icon_2;
Записан
Day
Частый гость
***
Offline Offline

Сообщений: 290


Просмотр профиля
« Ответ #4 : Сентябрь 15, 2015, 10:22 »

Попробуй завести в папке с экзешником папочку IMAGEFORMSTS и переписать туда QT\plugins\imageformats\qico4.dll (qicod4.dll) или соответствующую версии дээлэлку
Записан
BuRn
Гость
« Ответ #5 : Сентябрь 15, 2015, 11:01 »

Попробуй завести в папке с экзешником папочку IMAGEFORMSTS и переписать туда QT\plugins\imageformats\qico4.dll (qicod4.dll) или соответствующую версии дээлэлку
Этот вариант не пойдет, во первых программа кроссплатформенная, а во вторых бинарь собирается в статике
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #6 : Сентябрь 15, 2015, 11:12 »

Попробуй завести в папке с экзешником папочку IMAGEFORMSTS и переписать туда QT\plugins\imageformats\qico4.dll (qicod4.dll) или соответствующую версии дээлэлку
Этот вариант не пойдет, во первых программа кроссплатформенная, а во вторых бинарь собирается в статике

Для PNG это и не нужно.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #7 : Сентябрь 15, 2015, 11:14 »

Добрый день! Может кто подскажет, почему при первой установке иконки через setWindowIcon все ок, а вот если я ее начинаю менять, и применяю повторно setWindowIcon, то вижу по прежнему ту иконку, которую загрузил первый раз?
Возможно потому что системное окно уже создано. Попробуйте удалить и создать с др иконкой
Записан
BuRn
Гость
« Ответ #8 : Сентябрь 15, 2015, 11:25 »

Добрый день! Может кто подскажет, почему при первой установке иконки через setWindowIcon все ок, а вот если я ее начинаю менять, и применяю повторно setWindowIcon, то вижу по прежнему ту иконку, которую загрузил первый раз?
Возможно потому что системное окно уже создано. Попробуйте удалить и создать с др иконкой
Кое что выяснил, почему-то если брать обычное приложение, то там действительно все меняется, но если я возьму пустой qml проект, т.е. с пустым окном, то там уже не переключается иконка. Мне нужно эту иконку постоянно перерисовывать
« Последнее редактирование: Сентябрь 15, 2015, 11:30 от BuRn » Записан
Fregloin
Супер
******
Offline Offline

Сообщений: 1025


Просмотр профиля
« Ответ #9 : Сентябрь 16, 2015, 10:42 »

для начала, в какой ОС вы это пытаетесь сделать?
Записан
BuRn
Гость
« Ответ #10 : Сентябрь 16, 2015, 13:55 »

для начала, в какой ОС вы это пытаетесь сделать?
Linux,если мне память не изменяет, в window тоже повторяется. Qt 5.5
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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