Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
#DEXE/USDT analysis :
#DEXE is currently in an uptrend on the higher time frame (HTF). The price is in an accumulation phase, consolidating sideways. A breakout from this consolidation is anticipated soon, which would likely continue the bullish rally and test the swing high. We should look for potential pullbacks to establish long entries.
TF : 1W
Entry : $8.260
Target : $18.100
SL : $6.340
#DEXE/USDT analysis :
#DEXE is currently facing resistance from the 200 EMA on the daily time frame. On the 4-hour time frame, it has broken and retested the support zone. The price is now likely to continue its bearish momentum and test new lows.
TF : 4H
Entry : $8.461
Target : $7.953
SL : $8.783