Есть у QLabel есть одна особенность. Её минимальный размер определяется текстом, который в неё записан. Это приводит к тому что длинный текст принудительно увеличивает ширину интерфейса.
В большинстве случаев это выглядит плохо.
Как с этим бороться?
🔸 Обрезать текст заранее, задав лимит по длине строки. В этом случае мы теряем часть визуальной информации. Не всегда угадаешь нужный размер. В разных OS шрифт используется разный.
🔸 Делать перенос строки. Тогда мы получим изменение размера в другую сторону, что тоже поломает интерфейс.
🔸 Переопределить paintEvent() и сделать кастомный рендеринг текста. Можно, но слишком сложно для такой задачи.
Проще всего обрезать текст под текущий размер виджета используя класс QFontMetrics.
Он имеет готовый метод elidedText(), который просто вызываем по событию resizeEvent.
Я также добавил установку ToolTip чтобы всегда можно было увидеть полный текст при наведении курсора.
🌎 Код здесь
#qt#source
Operation Paperclip was a secret U.S. program after World War II. It brought over 1,500 German and Austrian scientists to the United States. Many had been members of the Nazi Party. They worked on military, aeronautics, and space research. Their Nazi pasts were ignored so the U.S. could use their expertise and keep it from the Soviet Union.
🇺🇸🧑🔬🚀
[Read more]
@googlefactss
#OperationPaperclip#HistoryFacts#ColdWar#Science#NASA
Operation Osoaviakhim was a secret Soviet program after World War II. Over 2,500 German scientists, engineers, and technicians and their families were taken from the Soviet zone of Germany to the USSR.
They worked on Soviet military, weapons, and rocket technology. The goal was to use German expertise to strengthen the USSR and keep it from falling into Western hands.
Basically the Soviet version of operation Paperclip📎
🇷🇺🔬🚀
[Read more]
@googlefactss
#OperationOsoaviakhim#ColdWar#HistoryFacts#WWII#SovietUnion#Science#operationpaperclip