![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
JohnZ |
![]()
Сообщение
#1
|
Участник ![]() ![]() Группа: Участник Сообщений: 139 Регистрация: 19.7.2014 Пользователь №: 4190 Спасибо сказали: 10 раз(а) Репутация: ![]() ![]() ![]() |
Всем Здравия !
Задаю вопрос повторно, по совету админа, т.к. предыдущий ответ утерян ... Проблема в следующем, - есть в скрипте функции CalcVO1(), CalcVO2(), CalcVO3(), ... Как можно вызвать эти ф-ции по имени в переменной ? В и-нете нашёл аналогичный вопрос (и ответ !), ... http://www.sql.ru/forum/879788/js-vyzov-fu...ni-v-peremennoy но ответ был дан для web-а, и в QT Script он почему-то не работает ![]() На скрине окно отладчика QT Script с демонстрацией проблемы на вызове тестовой ф-ции ... В принципе половинчатое решение есть, с пом-ю С++ Раскрывающийся текст void MainWindow::callFunc(QString ffName, int fnum) { QString fName = QString("%0%1").arg(ffName).arg(fnum); if (engine->globalObject().property(fName).isValid()) engine->globalObject().property(fName).call(); } ... но тогда придётся _параметры_ вызова делать глобальными в скрипте, что некузяво ![]() Заранее благодарен за помощь. Сообщение отредактировал JohnZ - 25.6.2017, 15:23 |
|
|
lanz |
![]()
Сообщение
#2
|
![]() Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 690 Регистрация: 28.12.2012 Пользователь №: 3660 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
В qscript можно использовать просто this вместо window для глобального объекта (по моему я так писал
![]() |
|
|
JohnZ |
![]() ![]()
Сообщение
#3
|
Участник ![]() ![]() Группа: Участник Сообщений: 139 Регистрация: 19.7.2014 Пользователь №: 4190 Спасибо сказали: 10 раз(а) Репутация: ![]() ![]() ![]() |
Спасибо Lanz ! Рещено !
Я не заметилЪ точку после THIS и поэтому не работало !!! Раскрывающийся текст function CalcVO1() { } function CalcVO2() { } function CalcVO3() { } ////////////////////////////////////// var Num = 1; this['CalcVO' + Num ](); Num = 2; this['CalcVO' + Num ](); PS: 2 Admin Как в заголовке ТЕМЫ поставить "РЕШЕНО" ??? Сообщение отредактировал JohnZ - 29.6.2017, 12:35 |
|
|
ViGOur |
![]()
Сообщение
#4
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
![]() ![]() |
![]() |
Текстовая версия | Сейчас: 17.2.2025, 20:12 |