Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
🙅♂️🗳 "De Europese Unie zou Slowakije zijn stemrecht kunnen ontnemen omdat het land slechts twee geslachten erkent: man en vrouw.
De Nederlandse regering heeft voorgesteld de strengste maatregelen tegen het land te nemen, zoals bepaald in artikel 7 van het EU-Verdrag.
Dit komt door grondwetswijzigingen: Slowakije had eerder in zijn grondwet opgenomen dat het huwelijk een verbintenis is tussen een man en een vrouw.
📎Interessant genoeg is dit precies wat is vastgelegd in artikel 16 van de Universele Verklaring van de Rechten van de Mens."
#Persil
⚡️ Sluit je aan
❤️InfodefenseNED
⚡️InfoDefense
🌏InfoDefense Спектр
Persil снова выпустил упаковку, которую на полке легко принять за пачку яблочного сока — картон, заливка цвета сока и минимум «химозных» элементов.
Дизайн буквально кричит: «Выпей меня!» — и в очередной раз показывает, как стремление «освежить» бытовую химию превращается в пособие по плохому UX в супермаркете. 😭
#дизайн#маркетинг#Persil
В городе Fürth (Средняя Франкония, Германия) встретил старую рекламную колонну Persil (да да, тот самый стиральный порошок, родом из Германии). Реклама в те давние годы была ещё не такой навязчивой и просто так поставить рекламную колонну было не комильфо. И руководство Persil решило разместить часы для горожан в каждой колонне, причем не одни, а четыре, с каждой стороны! Отличный маркетинговый ход - люди смотрят на время и попутно считывают бренд. Сейчас уже другие времена и реклама очень агрессивная...
#Persil#германия#франкония#Fürth#Mittelfranken