Russian Qt Forum
Сентября 10, 2025, 19:16
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
Не проходят сигналы кнопки-выключателя
Страниц: [
1
]
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Не проходят сигналы кнопки-выключателя (Прочитано 3002 раз)
Odyssey
Гость
Не проходят сигналы кнопки-выключателя
«
:
Декабря 04, 2012, 07:59 »
Работаю в Линуксе, Qt 4.5.3
Допустим, у нас на форме есть кнопка-выключатель и некий слот, обрабатывающий ее нажатие/отжатие.
connect(ui->checkableButton, SIGNAL(clicked(bool)), this, SLOT(slotButtonClicked(bool)));
В этом случае, если нажать кнопку на форме - сигнал проходит. Но если в каком-нибудь методе выполнить ui->checkableButton->setChecked(true/false), то сигнал не проходит. Конечно, в программе можно сразу же за этим вызвать слот slotButtonClicked, но такое не всегда удобно.
Есть ли решение проблемы? )
Записан
Bepec
Гость
Re: Не проходят сигналы кнопки-выключателя
«
Ответ #1 :
Декабря 04, 2012, 08:18 »
Это не проблема.
Приведу аналогию.
Мама готовит обед. Притовив посылает сигнал - "КУШААААТЬ."
У вас же.
Сам приготовил обед. И жду до тех пор, пока мама не издаст сигнал "КУШАААТЬ".
Сигналы издаются после действий пользователя. А вы меняете программно сами и сами же жалуетесь, что вы не оповещаетесь о событии
Записан
arhohryakov
Гость
Re: Не проходят сигналы кнопки-выключателя
«
Ответ #2 :
Декабря 04, 2012, 08:23 »
В документации чётко написано:
void QAbstractButton::clicked ( bool checked = false ) [signal]
This signal is emitted when the button is activated (i.e. pressed down then released while the mouse cursor is inside the button), when the shortcut key is typed, or when click() or animateClick() is called. Notably, this signal is not emitted if you call setDown(), setChecked() or toggle().
Т.е. после setChecked() сигнал не вызывается. => Вызываем сами.
Записан
Odyssey
Гость
Re: Не проходят сигналы кнопки-выключателя
«
Ответ #3 :
Декабря 04, 2012, 08:58 »
Благодарю! ))
Записан
GreatSnake
Джедай : наставник для всех
Offline
Сообщений: 2921
Re: Не проходят сигналы кнопки-выключателя
«
Ответ #4 :
Декабря 04, 2012, 10:28 »
Цитата: Odyssey от Декабря 04, 2012, 07:59
Есть ли решение проблемы? )
Код
C++ (Qt)
void
QAbstractButton
::
toggled
(
bool
checked
)
[
signal
]
Записан
Qt 5.11/4.8.7 (X11/Win)
Страниц: [
1
]
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...