Включить сжатие QLabel, даже если он усекает текст
Как я могу изменить размер QLabel, даже если это означает усечение содержащего его текста? У меня есть QLabel, растягивающий все горизонтальное пространство виджета. При настройке его текста я удостоверяюсь, что он правильно усечен, т. е. получает свои FontMetrics и Width и использует метрики.elidedText ().
но когда пользователь изменяет размер виджета, метка не позволяет ему сжиматься дальше, так как она будет усекать его текст.
есть идеи, как это решить? Самый простой решение я думаю, было бы как-то сказать QLabel всегда сжиматься, а затем поймать событие изменения размера и правильно форматировать текст - я просто не знаю, как сделать первую часть (разные политики размера не помогают)
1 ответов
хотя вы упоминаете, что политика установки размера не помогла, установка QLabel
горизонтальный размер политики в QSizePolicy::Ignored
должен сказать содержащему менеджеру макета игнорировать любую подсказку минимального размера из метки. Альтернативой было бы установить QLabel
минимальный горизонтальный размер до ненулевого значения, например 1. Если ни то, ни другое не работает, тогда вмешивается что-то другое.