crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Обработчик изменений на всей форме
pers_tmb
  опции профиля:
сообщение 7.6.2012, 15:52
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 1
Регистрация: 7.6.2012
Пользователь №: 3416

Спасибо сказали: 0 раз(а)




Репутация:   0  


Доброго времени суток :)

Я с программированием и с QT в частности пока ещё на Вы, но писать кучу лишнего кода уже лень.
Вообщем по нажатию на одну из кнопок создаётся у меня диалог с кучей полей QLineEdit. Хочется сделать так, чтобы на кнопку OK, привязанную к слоту accept(), можно было нажать только когда все поля заполнены. Сейчас я могу реализовать это только через сигнал textChanged для каждого поля по отдельности.

Но наверняка существует какая-нибудь хитрость, упрощающая задачу... :rolleyes: Подскажите, пожалуйста.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Алексей1153
  опции профиля:
сообщение 8.6.2012, 6:47
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


так энто самое... Заведи сигнал изменения текста со всех контролов в один слот, где будет производится проверка ВСЕХ контролов, а затем обновление статуса кнопки (доступна/недоступна). При инициализации формы слот нужно будет вызвать один раз вручную.

Поскольку по крайней мере два раза необходима групповая обработка контролов, имеет смысл хранить указатели на все эти контролы в массиве - члене класса (вектор, к примеру)

Сообщение отредактировал Алексей1153 - 8.6.2012, 6:49
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


7 чел. читают эту тему (гостей: 7, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 26.1.2025, 9:42