30 / 8 / 2
Регистрация: 20.08.2011
Сообщений: 615
|
|
1 | |
Как в функцию передать функцию, которая будет слотом?08.12.2014, 21:42. Показов 3065. Ответов 12
Метки нет Все метки)
(
Как в функцию передать функцию, которая будет слотом?
То, что написано в интернете и тут (например: Как передавать указатель на функцию в функцию для ее выполнения?) для слотовой функции не пожходит. Пишет: Код
QObject::connect: No such slot MainWindow::(this->*slot)()
0
|
|
08.12.2014, 21:42 | |
Ответы с готовыми решениями:
12
[Многопоточность] Как в функцию, которая будет выполняться в отдельном потоке, передать нужные аргументы?
Решение системы уравнений: написать функцию, которая как параметр будет использовать другую функцию
|
76 / 76 / 32
Регистрация: 14.04.2014
Сообщений: 408
|
|
09.12.2014, 19:02 | 3 |
тоесть вам надо не отдельную функцию передать, а чей то метод? Почему тогда не передать указательна обьект.
+ можно передать сигнал и emit его потом
0
|
23 / 23 / 5
Регистрация: 05.12.2013
Сообщений: 215
|
|
09.12.2014, 20:55 | 6 |
ТС, префразируйте вопрос. Я лично ничего не понял, но чувствую, что там что-то элементарное...
0
|
419 / 418 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
|
||||||
09.12.2014, 21:14 | 7 | |||||
так не годится?
0
|
09.12.2014, 21:56 | 8 |
что-то мне подсказывает, что ТСу нужно в рантайме связать слот с сигналом через указатель на функцию/метод, которая является слотом. Т.е. на момент компиляции слот неизвестен.
0
|
419 / 418 / 72
Регистрация: 27.05.2012
Сообщений: 1,168
|
|
09.12.2014, 22:08 | 9 |
ждем разъяснений
![]()
0
|
76 / 76 / 32
Регистрация: 14.04.2014
Сообщений: 408
|
|
10.12.2014, 16:02 | 10 |
он же так и написал, связать сигнал со слотом, по указателю на слот. Тоетсь без обьекта, которому этот слот принадлежит.
0
|
10.12.2014, 20:51 | 11 |
я думаю проблема в том, что слот не известен на этапе компиляции и становится известен только при выполнении. А не в том, что это метод какого-то объекта и нужно как-то привязать его без объекта.
Нужны разъяснения от ТС.
0
|
Диссидент
![]() 27685 / 17308 / 3807
Регистрация: 24.12.2010
Сообщений: 38,963
|
||||||
10.12.2014, 22:16 | 12 | |||||
У меня в самом начале знакомства с Qt проскочил такой вариант
Дальше я эту тему развивать не стал, ибо не зачем было. Но можно попытаться с этой техникой поиграться. Встречный вопрос. Зачем ТС понадобилось это? Может быть есть другие, более регулярные способы решить его проблему? Я, к примеру, почти все сигналы от кнопок ловлю одним слотом, а уж там по sender() разбираюсь, кто сигнал послал и что ему от меня надо. Добавлено через 2 минуты Вообще, если возникают такие вопросы, может быть стоит посмотреть файлы, генерируемые moc-ом...
1
|
30 / 8 / 2
Регистрация: 20.08.2011
Сообщений: 615
|
||||||
11.12.2014, 21:15 [ТС] | 13 | |||||
Спасибо всем откликнувшимся. Сделал так:
0
|
11.12.2014, 21:15 | |
Помогаю со студенческими работами здесь
13
Необходимо передать в пользовательскую функцию (которая подключается dll) функцию, описанную в mathcad Написать функцию Факториал и программу, которая будет использовать эту функцию Создать функцию, которая будет вызывать другую функцию Как передать в функцию объект класса, будет ли это эффективно? как передать параметры в функцию, которая приклеена к событию?
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |