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