Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
🇷🇺 Без монтажа.
Без эффектов.
Просто самолёт, который делает то, для чего создан.
www.flytezjet.com
🇰🇬 Эч кандай монтаж жок.
Эч кандай эффект жок.
Жөн гана учак — өзүнүн чыныгы милдетин аткарып жатат.
www.flytezjet.com
🇬🇧 No edits.
No effects.
Just an aircraft doing what it was built for.
www.flytezjet.com
#TezJet#MD83#AviationFootage#AircraftTakeoff#FlyTezJet
🇷🇺 История MD-83 продолжается с TezJet.
www.flytezjet.com
🇰🇬 MD-83 тарыхы TezJet менен уланат.
www.flytezjet.com
🇬🇧 The MD-83 story continues with TezJet.
www.flytezjet.com
#TezJet#MD83#FlyTezJet#TezJetMD83#AviationLegacy
🇷🇺 Факты о MD-83 Tez
www.flytezjet.com
🇰🇬 MD-83 Tez тууралуу фактылар
www.flytezjet.com
🇬🇧 MD-83 Tez Facts
www.flytezjet.com
#TezJet#FlyTezJet#TezJetQuiz#TezJetFacts#MD83#TezTravel#TezJourney#TezJetAirlines
🇬🇧 FLY with the LAST MAD DOG
TezJet’s Inaugural Flight to Moscow – 21 August
🎯 Bishkek – Moscow (DME) and Moscow (DME) - Bishkek
🔥 Special Discount for Aviation Enthusiasts
📩 Email: [email protected]
#Avgeek#aviation#enthusiasts#AviationLovers#BishkekToMoscow
#TezJetFlights#VisitMoscow#MoscowTravel#InauguralFlight
#FirstFlightDeal#DomodedovoAirport#FlightDeals#AviationDiscount
#TezJetToMoscow#TezJetAirlines#MadDogFlight#MD83
#MoscowTrip
🇷🇺 ЛЕТАЙТЕ с LAST MAD DOG
Первый рейс TezJet в Москву — 21 августа
🎯 Бишкек – Москва (DME) и Москва (DME) – Бишкек
🔥 Специальная скидка для любителей авиации
📩 Email: [email protected]
🇰🇬 LAST MAD DOG менен УЧУҢУЗ
TezJetтин Москвага биринчи рейси — 21-август
🎯 Бишкек – Москва (DME) жана Москва (DME) – Бишкек
🔥 Авиацияны жакшы көргөндөр үчүн атайын арзандатуу
📩 Электрондук дарек: [email protected]
#Avgeek#aviation#enthusiasts#AviationLovers#BishkekToMoscow
#TezJetFlights#VisitMoscow#MoscowTravel#InauguralFlight
#FirstFlightDeal#DomodedovoAirport#FlightDeals#AviationDiscount
#TezJetToMoscow#TezJetAirlines#MadDogFlight#MD83
#MoscowTrip