Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
🌟 Mystic Garden Referral Program 🌟
✨ Invite friends, earn rewards!
🪙 Get 20 AURA for every friend you invite.
💸 Enjoy cashback from their AURA purchases:
- 10% for Level 1 friends
- 2% for Level 2 friends
Note: Cashback in BNB if they buy with BNB, or in $SING if they buy with $SING!
📣 Start inviting today and watch your garden flourish! 🌱
#MysticGarden#ReferralProgram#EarnRewards
🎤Announcement| Tycoon Game | Mystic Garden Game
🚀 SingSing Tycoon Game Referral Program is LIVE! 🎤🎉
Invite your friends, build your karaoke empire together, and earn BIG rewards! Here’s how it works:
Share your referral link 🎟 And you will receive:
1️⃣ Inviting Rewards:
For each invite, both you and your friend will receive 10 $KARA + 10 RUBY! 💸
2️⃣ Cashback Purchase:
➡️10% in TON when your Level 1 Friend buys $KARA 💰
➡️2% in TON when your Level 2 Friend buys $KARA 🎁
Start inviting now and grow your empire together! 🌟
#SingSingTycoon#ReferralProgram#EarnTogether#KARA
🎤Announcement | Chat | X (Twitter) | Website | Game