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

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

Moderator: ArtMares

zazaka
User avatar
Ответственный глюкогенератор
 
Posts: 98
Не передается по клику значение переменной
Code:
           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
User avatar
 
Posts: 72
Location: Москва
Что бы передать в функцию переменную используй use() вот как должен выглядеть твой код
Code:
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
User avatar
Ответственный глюкогенератор
 
Posts: 98
Точняк туплю )) спс
Унабле то лоад дынамиц либрары


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

Who is online
Users browsing this forum: No registered users and 6 guests