![]() |
|
|
![]()
|
|
| dix75 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 462 Регистрация: 17.7.2007 Репутация: 1 Всего: 1 |
Добрый вечер!
Ситуация в следующем у меня имеется около 20 QLineEditов. Также имеется общий слот для обработки сигналов от этих эдитов. Но как определить в каком конкретно произошло событие? sender - не помогает. (т.к. в зависимости от эдита могут далее возбуждаются другие сигналы) в QAction есть метод setData в который я могу поместить уникальный id но в эдитах такого нет. Едиственное, что приходит на ум это сделать свич и проверять по указателю каждый эдит. -------------------- save your mind |
|||
|
||||
| SABROG |
|
||||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Тут по подробнее. Ты хочешь сказать, что никак не можешь узнать кто прислал сигнал?
А как это тебе поможет, если тебе sender() не подходит? Если не знаешь кто прислал сигнал, то не знаешь у кого забирать данные. Это сообщение отредактировал(а) SABROG - 8.3.2010, 23:04 |
||||
|
|||||
| dix75 |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 462 Регистрация: 17.7.2007 Репутация: 1 Всего: 1 |
Нет, узнать я могу кто. Некий объект Эдит у которого есть определенные данные (например text) Как бы точнее объяснить. У меня каждый Эдит должен взаимодействовать с определенным объектом. т.е выходит что каждый сигнал эдита соединяется с объектом, но реализация слотов идентична для всех сигналов. разница только в id эдита. Просто мне неохота да и неверно писать 20 идентичных слота. Добавлено через 5 минут и 32 секунды т.е. получается 20 эдитов такого характера
Добавлено через 11 минут и 54 секунды Хуже того объекты с которыми соединются слоты могут и не существовать. Поэтому и необходим один глобальный слот. -------------------- save your mind |
||||
|
|||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
||||
|
||||
| borisbn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 4875 Регистрация: 6.2.2010 Где: Ростов-на-Дону Репутация: 48 Всего: 135 |
Пробовал QObject::setProperty() и QObject::property() для едитов?
В property можно записать например адрес связанного с едитом объекта Это сообщение отредактировал(а) borisbn - 9.3.2010, 05:45 -------------------- Женщины отличаются от программистов тем, что у них чары состоят из стрингов |
|||
|
||||
| dix75 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 462 Регистрация: 17.7.2007 Репутация: 1 Всего: 1 |
SABROG,
У меня есть форма с едитами и есть скрытый пулл объектов Если объект существует он отображает данные едита в противном случае ничего нет Ситуация похожа на MVC -------------------- save your mind |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
Какой объект? Edit отображает данные объекта или свои собственные данные? Текст, который отображает Edit это данные Edit'a? Какова реальная задача?
|
|||
|
||||
| dix75 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 462 Регистрация: 17.7.2007 Репутация: 1 Всего: 1 |
Собственный (график на QWidget) собственные да Отображение данных едитов при вводе их пользователем автоматически отображались графически -------------------- save your mind |
|||
|
||||
| SABROG |
|
|||
![]() Hacker ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2481 Регистрация: 18.9.2006 Репутация: 81 Всего: 91 |
||||
|
||||
| dix75 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 462 Регистрация: 17.7.2007 Репутация: 1 Всего: 1 |
Почему подходит. но вариант с QObject::setProperty() и QObject::property() требует меньше строк в реализации. -------------------- save your mind |
|||
|
||||
![]()
|
| Правила форума "С/С++: Кроссплатформенное программирование, QT/Gtk+/wxWidgets" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, JackYF, Любитель. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |