передача параметра вместе с сигналом |
Здравствуйте, гость ( Вход | Регистрация )
передача параметра вместе с сигналом |
Гость_Анатолий_* |
12.10.2011, 13:36
Сообщение
#1
|
Гости |
как передавать параметр в сигнале?
например,
будет работать? |
|
|
DOGG |
12.10.2011, 14:05
Сообщение
#2
|
Студент Группа: Участник Сообщений: 44 Регистрация: 9.8.2011 Из: Калининград Пользователь №: 2798 Спасибо сказали: 6 раз(а) Репутация: 0 |
Нет так не будет работать! Смотрите в сторону QSignalMapper.
|
|
|
BRE |
12.10.2011, 14:14
Сообщение
#3
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
Как раз так будет работать, а вот если у слота есть параметр, а у сигнала нет (или они разных несовместимых типов) - тогда не будет.
|
|
|
DOGG |
12.10.2011, 14:16
Сообщение
#4
|
Студент Группа: Участник Сообщений: 44 Регистрация: 9.8.2011 Из: Калининград Пользователь №: 2798 Спасибо сказали: 6 раз(а) Репутация: 0 |
Если data - это тип, то да, но я думал - это переменная...
|
|
|
BRE |
12.10.2011, 14:52
Сообщение
#5
|
Профессионал Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44 |
|
|
|
Гость_Анатолий_* |
12.10.2011, 16:40
Сообщение
#6
|
Гости |
вообще идея такая: data- структура. забиваем её из всяких QLineEdit, QComboBox.
сигнал стандартный QPushButton, но нужно, чтобы он объекту, работающему с БД прислал данные. получается в сигнал пихаем, в прототипа слота прописываем
так? тогда ещё вопрос. а как слоту возвращать данные обратно в виджет? |
|
|
ilyabvt |
12.10.2011, 16:57
Сообщение
#7
|
Активный участник Группа: Участник Сообщений: 297 Регистрация: 23.6.2011 Пользователь №: 2765 Спасибо сказали: 45 раз(а) Репутация: 3 |
Цитата сигнал стандартный QPushButton Стандартный сигнал передает только одну переменную типа bool. Цитата а как слоту возвращать данные обратно в виджет Ну например испускать свой сигнал и соединять его со слотом setText(QString). |
|
|
DOGG |
12.10.2011, 17:03
Сообщение
#8
|
Студент Группа: Участник Сообщений: 44 Регистрация: 9.8.2011 Из: Калининград Пользователь №: 2798 Спасибо сказали: 6 раз(а) Репутация: 0 |
может быть стоит сделать так:
виджету добавить слот saveData(), соединить сигнал кнопки clicked() с этим слотом, в нем собирать данные и уже вызывать метод для сохранения. Ну а обратно так же сигнал от объекта, работающего с БД, соедининть со своим слотом виджета, например saveCompleted Сообщение отредактировал DOGG - 12.10.2011, 17:03 |
|
|
Текстовая версия | Сейчас: 28.11.2024, 16:14 |