![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
flankerr |
![]() ![]()
Сообщение
#1
|
Активный участник ![]() ![]() ![]() Группа: Участник Сообщений: 356 Регистрация: 9.1.2008 Пользователь №: 65 Спасибо сказали: 2 раз(а) Репутация: ![]() ![]() ![]() |
Есть диалог, на нём есть QTextEdit
Содержимое QTextEdit иниализированнол неким текстом ну к примеру "введите текст" Нужно что при попытке ввода текста умолчательное значение сразу стиралось. Частично сделать это получилось. Ловим событие OnSelectChanged() и елси оно сработал впервые то затираем текст setText(""); Но вот если перейти в QTextEdit через табуляцию (без мышки) получается кукишь. Вопрос как бы реализовать эту фишку? У мяен диалог сделан через дизайнер поэтому просьба предлогать варианты без созадние собственного класса наследника от QTextEdit. |
|
|
![]() |
kwisp |
![]()
Сообщение
#2
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
flankerr,
не функция а слот. присоедини к сигналу изменения текста в QTextEdit. пусть принадлежит классу, какому тебе заблагорассудится, где ты собрался обрабатывать события изменения фокуса? там и слот создай. вызывай этот слот при создании диалога 1 раз дале он будет вызываться всякий раз как ты изменишь текст и в случае пустого текста в редактореТекста появится Введите текст! + будет выделенным. это предложенный мной вариант как альтернативный предложенным ранее. если тебе лень или нет времени изучить что такое фильтр событий eventFilter() можешь воспользоваться этим методом по моему с твоей задачей он справляется. П.С. если ты не понял -- фильтр событий не тронет твой диалог, тебе не надо будет наследоваться и переписывать методы диалога. Сообщение отредактировал kwisp - 4.3.2010, 18:37 |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 29.6.2025, 22:24 |