авто генерация кнопок

вопросы по созданию программ с использованием возможностей библиотеки PHPQt5

Модератор: ArtMares

zazaka
Аватара пользователя
Ответственный глюкогенератор
 
Сообщения: 98
Поблагодарили: 2 раза
Не передается по клику значение переменной

phpqt Код:
           foreach ($this->info_array as $k=>$v)
            {
                $button = new QPushButton;
                $button->text = $v['name'];
                $button->onClicked = function() {
                    $this->open_file($k);
                };
              
                $this->menny_samples->layout->addWidget($button);

                //pre($k);
            }




сами кнопки создаются и отображаются и имена файлов пишутся и по клику функция вызывается..  а вот значение $k не передаётся
как быть((( как переделать чтобы значения передавались динамически созданные. есил статически написать что-то то оно передаётся но у всех кнопок одно и тоже (
Унабле то лоад дынамиц либрары

ArtMares
Аватара пользователя
 
Сообщения: 72
Откуда: Москва
Благодарил (а): 4 раза
Поблагодарили: 5 раз
Что бы передать в функцию переменную используй use() вот как должен выглядеть твой код
phpqt Код:
foreach ($this->info_array as $k=>$v) {
    $button = new QPushButton;
    $button->text = $v['name'];
    $button->onClicked = function() use($k) {
        $this->open_file($k);
    };
              
    $this->menny_samples->layout->addWidget($button);
}
PQStudio Development Progress: 75%
Version: 0.2

zazaka
Аватара пользователя
Ответственный глюкогенератор
 
Сообщения: 98
Поблагодарили: 2 раза
Точняк туплю )) спс
Унабле то лоад дынамиц либрары


Вернуться в Вопрошайка

Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость
cron