Russian Qt Forum
Ноябрь 26, 2024, 06:28 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Родитель сигнала  (Прочитано 4672 раз)
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« : Сентябрь 10, 2009, 09:35 »

Вопрос такой допустим есть две кнопки, у каждой по сигналу clicked() , они обрабатываются одним слотом, возможно ли в этом слоте определить он какой именно кнопки пришёл сигнал?
Записан
BRE
Гость
« Ответ #1 : Сентябрь 10, 2009, 09:37 »

Вопрос такой допустим есть две кнопки, у каждой по сигналу clicked() , они обрабатываются одним слотом, возможно ли в этом слоте определить он какой именно кнопки пришёл сигнал?
QObject::sender()
Записан
spirit
Гость
« Ответ #2 : Сентябрь 10, 2009, 09:38 »

по sender'у.
Записан
ecspertiza
Супер
******
Offline Offline

Сообщений: 1053


С уважением, мастер конфетного цеха!


Просмотр профиля
« Ответ #3 : Сентябрь 10, 2009, 09:48 »

Пасибо, то что нада.
Записан
SASA
Гость
« Ответ #4 : Сентябрь 10, 2009, 17:59 »

QObject::sender() не совсем красиво.
Я бы посмотрел QSignalMapper. Где-то я видел хорошую статейку с примером. Там Было 10 кнопок (калькулятор) и все вызывали один слот. Т.е. я предлагаю не раскручивать sender (который в ряде случаев может быть не правильный), а оринтироваться по входному параметру слота.
Записан
spectre71
Гость
« Ответ #5 : Сентябрь 10, 2009, 18:04 »

QObject::sender() не совсем красиво.
Я бы посмотрел QSignalMapper. Где-то я видел хорошую статейку с примером. Там Было 10 кнопок (калькулятор) и все вызывали один слот. Т.е. я предлагаю не раскручивать sender (который в ряде случаев может быть не правильный), а оринтироваться по входному параметру слота.
"который в ряде случаев может быть не правильный"
Это как, в каких случаях?
Записан
Alex Custov
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 2063


Просмотр профиля
« Ответ #6 : Сентябрь 11, 2009, 03:48 »

"который в ряде случаев может быть не правильный"
Это как, в каких случаях?

Я вижу только один случай - прямой вызов слота, когда sender() вернёт 0
Записан
SASA
Гость
« Ответ #7 : Сентябрь 11, 2009, 11:42 »

Если соединить сигнал с сигналом. Кого должен вернуть sender - пересылающего или пославшего?
Не помню точно, но при изменении типа коннекта тоже что-то не так.

Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.104 секунд. Запросов: 23.