Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
🦶🏿Ryskinder - психодел, трип-хоп и инди-поп
Здаров! Это Dem, автор канала Синебелая субмарина, в котором я рассказываю про непопулярную израильскую музыку и находки в сфере.
И сегодня пришёл вам рассказать про одного покемона музыкальной сцены, которого хрен поймаешь в Тель-Авиве с его постоянным пребыванием в Берлине с начала короны.
Ryskinder - רייסקינדר
Этот парнишка в себе совмещает такой эмоциональный порыв, психодел, трип-хоп и инди-поп, который просто превращает площадку во взрывное и ритмичное сердце.
Записал балдёжную песню в дуэте с Хилой.
Проживая в Берлине, киндер выпускает шесть альбомов на разных израильских любительских лейблах и много фитов с мэтрами подвальной сцены.
Его инстаграм
#Indie#triphop#psychedelic#electronic#indietronica
Даше и Маше привет и спасибо за сцену :)
💡🔦Soul Food x figura.fon💡🔦
Вечер электронной музыки с гостями изкреативной студии figura.fon
#electronic#triphop#ambient#experimental#techno#idm#ritual
🕰
13 декабря (суббота)
17:00 – 23:00
👽
Electric Blue
Vanya
Be Kompromissed
Chaika
Unculture Theory
Microamp
Xonwy
nothing is real
📍
Красная Поляна, пер. Ореховый 2а, Soul Food