Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
疫情后第一次去了BSO(9.30才终于开门了!)今天是免费的非常欢脱的community concert~开场演了一首贝多芬的The Consecration of the House Overture,program note上说这是BSO历史上演的第一首曲子(1881年)~这也是疫情期间BSO的线上平台BSO now每个视频的片头曲目~再次听到live有点感动~~~
https://m.youtube.com/watch?v=HhzOmL8EX0E
#BSO#beethoven
分享这周BSO Now的另一首曲目,Duke Ellington的Come Sunday~BSO这个版本非常特别,是orchestra和narrator Charlotte Blake Alston 一起,没有找到配置一样的录音,所以录了个屏😂😂😂太喜欢这位narrator,说话像唱歌一样,一下就被抓住了注意力!文字写得也很好~“Sunday always had a sweet, sweet smell that lingered through the day”☺️大家周日愉快!#jazz#bso
La La Land - Banda Sonora. Si le gustó la película, este regalo le encantará #LaLaLand#BSO#BandaSonora#Música
https://www.milideaspararegalar.es/producto/la-la-land-banda-sonora/
💻www.milideaspararegalar.es
La La Land - Banda Sonora. Si le gustó la película, este regalo le encantará #LaLaLand#BSO#BandaSonora#Música
https://www.milideaspararegalar.es/producto/la-la-land-banda-sonora/
💻www.milideaspararegalar.es