Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Продолжение архива вопросов (https://www.otvetnemail.ru/prodolzhenie-arhiva-voprosov-808/)
-   -   Изменение значения при передачи от сигнала слоту (https://www.otvetnemail.ru/prodolzhenie-arhiva-voprosov-808/izmenenie-znacheniya-pri-peredachi-ot-signala-slotu-260789/)

Guest 28.09.2011 19:47

Изменение значения при передачи от сигнала слоту
 
Здравствуйте!Чтобы объяснить суть моего вопроса приведу простой пример.Допустим у нас есть QCheckBox и QLineEdit. И требование при поставленной галочке поле доступно для редактирования, а при отсутствии галочки - недоступно.Решается это очень просто:Код:connect( сheckBox , SIGNAL( toggled( bool ) ) , lineEdit , SLOT( readOnly( bool ) ) ) ;Если же необходимо сделать наоборот( галочка есть - поле недоступно, галочки нет - поле доступно ) простым coonnectом уже не обойдешься. Приходится создавать дополнительный слот.Хотя понятно, что принципиальных различий в описании первого и второго случая нет, реализации выглядят по-разному.1. Есть ли какой-то способ в connectе изменить передаваемое значение?2. Думаю, что такого способа нет, поэтому другой вопрос: почему бы троллям не сделать что-то вроде Код:connect( сheckBox , SIGNAL( toggled( param ) ) , lineEdit , SLOT( readOnly( not param ) ) ) ; ?3. Какое решение в примере идеологически правильное?Спасибо!


Часовой пояс GMT, время: 15:39.


© www.otvetnemail.ru - Форум вопросов и ответов.