Название: QLabel. Ширина Отправлено: star62 от Январь 11, 2009, 15:19 Добрый день. Такая проблема. Надо узнать какую задать ширину QLabel, чтобы в него уместилась строка которую он отображает.
Вычислить ширину строки со всеми параметрами шрифта, размера и т.д. которые настроены в QLabel. У меня программно меняется текст в метке и иногда он не вмещается в ее размер. Надо исправить, но не пойму как. Название: Re: QLabel. Ширина Отправлено: lit-uriy от Январь 11, 2009, 15:23 У меня программно меняется текст в метке и иногда он не вмещается в ее размер. Надо исправить, но не пойму как. Метка сама регулирует свой размер, если политика размера по умолчанию, а не фиксировнная. Название: Re: QLabel. Ширина Отправлено: Dendy от Январь 11, 2009, 14:55 Метка сама регулирует свой размер, если политика размера по умолчанию, а не фиксировнная. И размер окна будет сам прыгать. Или соседние элементы двигаться туда-сюда. Автору. Возможно поможет: Код: label->setMinimumWidth( QFontMetrics( label->font() ).width( "widest string that label should contain" ) ); Название: Re: QLabel. Ширина Отправлено: sLiva от Январь 11, 2009, 16:56 можно это попробовать:
Код
Название: Re: QLabel. Ширина Отправлено: lit-uriy от Январь 11, 2009, 18:11 И размер окна будет сам прыгать. Или соседние элементы двигаться туда-сюда. А в случае если руками (в коде) изменять размер, то таких эфектов не будет? ;)Название: Re: QLabel. Ширина Отправлено: Dendy от Январь 11, 2009, 18:26 А в случае если руками (в коде) изменять размер, то таких эфектов не будет? ;) Будут. От этого и избавляемся установкой минимальной ширины. Я бы даже рекомендовал: QWidget::setFixedWidth(). Название: Re: QLabel. Ширина Отправлено: Hordi от Январь 12, 2009, 10:08 QLabel label;
QRect r = QFontMetrics(label.font(),&label).boundingRect("XXX"); label.resize(r.width(),r.height()); Название: Re: QLabel. Ширина Отправлено: star62 от Январь 15, 2009, 10:19 Всем спасибо большое. Я решил эту задачу через setGeometry(), а там для ширины использую sizeHint().width() и updateGeometry().
Предлагаемые варианты тоже хороши. |