Russian Qt Forum

Qt => Вопросы новичков => Тема начата: МП© от Февраля 28, 2012, 19:07



Название: QLineEdit нажать
Отправлено: МП© от Февраля 28, 2012, 19:07
Необходимо, при нажатии на lineEdit, она меняла свой внешний вид.
Например строка серого цвета, при нажатии на нее, она стала белой.

Поиском пользовался, ассистентом тоже,
как вариант использовать mousePressEvent(),
Подскажите, пжл, как можно это сделать?


Название: Re: QLineEdit нажать
Отправлено: kambala от Февраля 28, 2012, 19:11
унаследоваться от QLineEdit и переопределить mousePressEvent


Название: Re: QLineEdit нажать
Отправлено: Kurles от Февраля 28, 2012, 20:39
Если тебе надо при получению фокуса клавиатурой менять цвет, а при потери фокуса - восстанавливать, то переопределять
Код
C++ (Qt)
   void focusInEvent(QFocusEvent *);
   void focusOutEvent(QFocusEvent *);
Или использовать void QObject::installEventFilter ( QObject * filterObj ), что бы обойтись без наследования.


Название: Re: QLineEdit нажать
Отправлено: _OLEGator_ от Февраля 28, 2012, 20:52
Воспользоваться Qt Style Sheets и использовать псевдосостояние :focus