LINUX.ORG.RU

Поменять цвет QPushButton, QLabel

 ,


0

0

Добрый день. Может вопрос покажется кому то довольно глупым , но разобраться сам не смог ( сразу скажу гуглил - ничего не нашел ) В общем проблема такая, например , создаю Виджет, допустим, QPushButton в Qt designer. Не получается изменить его цвет, вставить картинку и т.д. - методы setColor и setIcon не работают. Менял используя setStyleSheet, но это не всегда удобно. Либо создавая в конструкторе Виджета, например, QLabel. Делал с ним что хочу, вот как то так:

 QLabel * b = new QLabel ( this );
   b->setScaledContents( true );
  b->setPixmap( QPixmap(  ":/image/ON_SOUND" ) );
  b->setAutoFillBackground(true);
  QVBoxLayout * l = new QVBoxLayout(this);
  layout->addWidget(b,0,Qt::AlignCenter);
  setLayout(layout);
Но на мой взгляд это какой то костыль. Подскажите чего я не понимаю. Заранее благодарен!


Ответ на: комментарий от RazrFalcon

Пробовал, вот так прописывал в конструкторе

QPalette * p = new QPalette ( this->palette() ) ;
p->setColor( QPalette::Background, Qt::blue );
 this->setPalette( *p );

nick9
() автор топика
Ответ на: комментарий от nick9

Все прекрасно работает:

QPalette pal = palette();
pal.setColor(QPalette::WindowText, Qt::red);
lbl->setPalette(pal);

RazrFalcon ★★★★★
()

Дизайнер все это позволяет легко делать через контекстное меню виджета, пункт «Изменить styleSheet».

gruy ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.