Название: QCheckBox програмное изменение состояния Отправлено: fearn0t от Октябрь 15, 2009, 21:51 Всем привет! Возможно я туплю... но решения не придумал.
Код
Смысл такой, чтобы при запуске программы некоторые checkbox должны помечаться и соответственно должны производиться некоторые действия. Но похоже что сигнал statechanged не генерируется. =((( Что почем? =) как сделать чтобы он генерировался? Название: Re: QCheckBox програмное изменение состояния Отправлено: fearn0t от Октябрь 15, 2009, 22:13 ой! я тупанул! ;D надо сигнал toggled() использовать! Что-то я запарился... вроде заработало, а теперь снова не работает... надо спать, а то у меня уже глюки. Ниче не работает! подскажите!
Название: Re: QCheckBox програмное изменение состояния Отправлено: reymon от Октябрь 15, 2009, 23:40 Слушай, сделал тоже самое что и ты 1в1 - Все работает и с toggled() и с stateChanged(int). QT 4.5 Windows
Название: Re: QCheckBox програмное изменение состояния Отправлено: registrationfedser87 от Октябрь 16, 2009, 06:24 Как я понял из документации, этот сигнал испускается только когда пользователь изменил состояние (а если программно менять его то сигнала не будет)
Код This signal is emitted whenever the check box's state changes, i.e. whenever the user checks or unchecks it Название: Re: QCheckBox програмное изменение состояния Отправлено: uriel от Октябрь 16, 2009, 07:47 Странно. Судя по исходникам, выдача сигнала происходит в функции setCheckState каждый раз когда новое состояние отличается от старого. То есть никакой привязки к действиями пользователя нет.
Название: Re: QCheckBox програмное изменение состояния Отправлено: registrationfedser87 от Октябрь 16, 2009, 08:21 Действительно,ты прав. Видимо косяк в документации
Название: Re: QCheckBox програмное изменение состояния Отправлено: fearn0t от Октябрь 16, 2009, 08:22 Спасибо люди добрые =) поищу решение на свежую голову. Как только найду - сообщу!
Название: Re: QCheckBox програмное изменение состояния Отправлено: registrationfedser87 от Октябрь 16, 2009, 11:51 Если тебя интересует только два состояния-с галкой или без(а третье промежуточное состояние checkbox'а не интересует) то используй сигнал:
Код а значение чекбоксам устанавливай методом: Код
Название: Re: QCheckBox програмное изменение состояния Отправлено: fearn0t от Октябрь 16, 2009, 21:25 Проблема была в том, что этот слот взаимодействовал с несколькими сигналами и в нем сигналы друг на друга накладывались.
|