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

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

Страниц: 1 [2] 3   Вниз
  Печать  
Автор Тема: Низкое разрешение иконки в лаунчере Ubuntu[РЕШЕНО]  (Прочитано 15856 раз)
Zeka13
Гость
« Ответ #15 : Апрель 28, 2012, 14:58 »

Цитировать
лончера
что это такое?

может вы хотяб скриншоты посмотрите, а не будете умничать?
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


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


Просмотр профиля
« Ответ #16 : Апрель 28, 2012, 15:20 »

QApplication::setWindowIcon(QIcon) ?
Записан
GreatSnake
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2921



Просмотр профиля
« Ответ #17 : Апрель 28, 2012, 15:34 »

что это такое?
Правильное произношение твоего "лаунчер" )

Цитировать
может вы хотяб скриншоты посмотрите, а не будете умничать?
Это ты тут пытаешься "умничать". Serr500 всё верно сказал.
Записан

Qt 5.11/4.8.7 (X11/Win)
Serr500
Гость
« Ответ #18 : Апрель 28, 2012, 15:42 »

может вы хотяб скриншоты посмотрите, а не будете умничать?
Может, Вы хотя б ответ почитаете, а не будете умничать?  Подмигивающий
Записан
Zeka13
Гость
« Ответ #19 : Апрель 28, 2012, 16:03 »

ecspertiza, я так и делаю, читайте вопрос пожалуйста!

Serr500, я то прочёл, а вы скриншоты посмотрели?

GreatSnake, вот вы так и называйте, думаю в ваших кругах вас поймут
где я умничал? вы посмотрите скрины сначала
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


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


Просмотр профиля
« Ответ #20 : Апрель 28, 2012, 16:17 »

ecspertiza, я так и делаю, читайте вопрос пожалуйста!

читаю

делаю так    w.setWindowIcon(QIcon(":/images/spin.svg"));

включаю телепата w - QWidget , зри что я пишу юзать нужно QApplication::setWindowIcon() разницу видишь ?
Записан
Zeka13
Гость
« Ответ #21 : Апрель 28, 2012, 16:20 »

спасибо
переделал, но всё без изменений

Код
C++ (Qt)
#include <QtGui/QApplication>
 
#include "mainwindow.h"
#include "maincount.h"
#include "values.h"
 
#include <QTranslator>
#include <QLibraryInfo>
#include <QFont>
#include <QFontDatabase>
 
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
 
   //загрузка фона, нужного для приложения
QFontDatabase::addApplicationFont(":/fonts/Ubuntu-L.ttf");
 
   //установка перевода текста на виджетах в зависимости от языка системы
QTranslator qtTranslator;
qtTranslator.load("qt_ru",QLibraryInfo::location(QLibraryInfo::TranslationsPath));
a.installTranslator(&qtTranslator);
a.setWindowIcon(QIcon(":/images/spin.svg"));
 
 
MainWindow w;
//w.setWindowIcon(QIcon(":/images/spin.svg"));
w.moveToCenter();
w.show();
return a.exec();
}
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


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


Просмотр профиля
« Ответ #22 : Апрель 28, 2012, 16:32 »

остается только одно, убедиться что в ресурсах лежит правильный файл. Остальное все должно быть хорошо.
Записан
Serr500
Гость
« Ответ #23 : Апрель 28, 2012, 17:58 »

я то прочёл, а вы скриншоты посмотрели?
Посмотрел. И что мешает сделать так, как написано в документации?
Записан
Serr500
Гость
« Ответ #24 : Апрель 28, 2012, 19:09 »

А вот теперь я скажу, как надо делать.

1) Иконка, которую присваивает метод setWindowIcon система зачем-то масштабирует. Предполагаю, что она подгоняет её к размеру заголовка окна. Затем лончер берёт из заголовка эту масштабированную иконку.

2) Я создал проект с именем icotest, в котором кроме главного окна (унаследовано от QWidget) ничего нет. После запуска в лончере в качестве иконки появился вопросительный знак. Далее я создал файл
Цитировать
/usr/share/applications/icotest.desktop
следующего содержания:
Цитировать
[Desktop Entry]
Type=Application
Exec=icotest
Icon=qtcreator
После чего запустил программу. В лончере появилась иконка QtCreator'а.

3) Специально для проверки запихал в ресурсы иконку разрешением 256*256 и сделал setWindowIcon в конструкторе главного окна. Иконка в лончере не изменилась. Убрал .desktop-файл, иконка поменялась на иконку из ресурсов и качество этой иконки испортилось. Если присваивать иконку через QApplication::setWindowIcon, происходит то же самое.

P.S. Иконку QtCreator взял потому, что лениво было свою лепить во всех разрешениях. Лежат иконки в каталогах с именами типа
Цитировать
/usr/share/icons/hicolor/NxN/apps

P.P.S. Эксперимент производился на Ubuntu 12.04 x64, Qtcreator и Qt - из комплектных пакетов.
« Последнее редактирование: Апрель 28, 2012, 21:14 от Serr500 » Записан
Zeka13
Гость
« Ответ #25 : Апрель 29, 2012, 16:43 »

да вы прям кэп, вопрос то, как сделать без этого файла!

Видимо никак...
Записан
Serr500
Гость
« Ответ #26 : Апрель 29, 2012, 16:49 »

вопрос то, как сделать без этого файла!
Такого условия в ваших сообщениях не было.
Записан
Zeka13
Гость
« Ответ #27 : Апрель 29, 2012, 16:59 »

ладно, извиняюсь

просто я думал это и так понятно, мне же придётся в пакет упаковывать тогда...
Записан
Serr500
Гость
« Ответ #28 : Апрель 29, 2012, 17:08 »

мне же придётся в пакет упаковывать тогда...
Такова концепция Unity...  Грустный

Посмотрите на вот эту статью: http://habrahabr.ru/post/135443/. Там товарищ что-то делал с иконками в панелях задач для разных ОС, в том числе и для Ubuntu с Unity. Может, что-то удастся вытащить.
Записан
Zeka13
Гость
« Ответ #29 : Апрель 29, 2012, 18:02 »

Цитировать
Такова концепция Unity...

наверное больше Gnome

всё равно спасибо
Записан
Страниц: 1 [2] 3   Вверх
  Печать  
 
Перейти в:  


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