Russian Qt Forum
Ноябрь 24, 2024, 11:49 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QLineEdit нажать  (Прочитано 2769 раз)
МП©
Гость
« : Февраль 28, 2012, 19:07 »

Необходимо, при нажатии на lineEdit, она меняла свой внешний вид.
Например строка серого цвета, при нажатии на нее, она стала белой.

Поиском пользовался, ассистентом тоже,
как вариант использовать mousePressEvent(),
Подскажите, пжл, как можно это сделать?
Записан
kambala
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 4747



Просмотр профиля WWW
« Ответ #1 : Февраль 28, 2012, 19:11 »

унаследоваться от QLineEdit и переопределить mousePressEvent
Записан

Изучением C++ вымощена дорога в Qt.

UTF-8 has been around since 1993 and Unicode 2.0 since 1996; if you have created any 8-bit character content since 1996 in anything other than UTF-8, then I hate you. © Matt Gallagher
Kurles
Бывалый
*****
Offline Offline

Сообщений: 480



Просмотр профиля
« Ответ #2 : Февраль 28, 2012, 20:39 »

Если тебе надо при получению фокуса клавиатурой менять цвет, а при потери фокуса - восстанавливать, то переопределять
Код
C++ (Qt)
   void focusInEvent(QFocusEvent *);
   void focusOutEvent(QFocusEvent *);
Или использовать void QObject::installEventFilter ( QObject * filterObj ), что бы обойтись без наследования.
Записан

Код
C++ (Qt)
while(!asleep()) sheep++;
_OLEGator_
Гость
« Ответ #3 : Февраль 28, 2012, 20:52 »

Воспользоваться Qt Style Sheets и использовать псевдосостояние :focus
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.091 секунд. Запросов: 23.