2016-09-27 2 views
0

У меня проблема, когда значки, используемые на QToolButtons на QMenu, прикрепленные к QToolButton, отображаются размытыми. Я пробовал разные размеры 24x24, 32x32, 64x64, различные форматы, такие как png и svg, но это всегда выглядит странно. На изображении вы можете видеть выбранное действие, а верхнее действие в меню имеет тот же значок, но тот, что в меню, размывается. Даже выбранный не очень резкий.qt qtoolbutton icon blurry

blurry icon

Есть некоторое конкретное руководство для тех значков или что я делаю не так? Второй и третий значок - это встроенная иконка, которая, я считаю, 24x24 svg, но я не смог воспроизвести.

+0

Может быть, ваш значок не сидит на полный пиксель, но слегка смещен и интерполированное между пиксели? Попробуйте подтолкнуть фактическое содержимое значка, чтобы узнать, станет ли он лучше. Проверьте эту ссылку http://dutchicon.com/articles/pixel-perfect – dtech

+0

Я пробовал это сейчас, и это может быть действительно каким-то образом связано, хотя я не могу настроить его в нужную точку. Я использую редактор пикселей, который привязывается к пикселю, и если я перемещаю один пиксель, часть любовника линии размыта, когда я перемещаюсь вниз, верхняя часть размыта. Пробовал также с векторными изображениями и привязкой к сетке пикселей, но все же, размытым ... –

+0

Ваше изображение может привязываться к пикселю, но Qt может также влиять на масштаб или положение. Эти вещи также могут варьироваться в разных платформах и стилях gui. – dtech

ответ

0

Да, вам нужно установить значки разных размеров, если вы хотите, чтобы они хорошо смотрелись под QToolButon и QMenu, QT подберет размер, который лучше всего подходит. Одно из возможных решений, если вы используете файлы ресурсов может быть такой:

QIcon *myQIcon = new QIcon; 
myQIcon->addFile(":icon24.svg", QSize(24,24)); 
myQIcon->addFile(":icon16.svg", QSize(16,16)); 

mMyQAction->setIcon(*myQIcon); 

Подробное описание можно найти здесь: http://mithatkonar.com/wiki/doku.php/qt/icons

Смежные вопросы