Найти тему

№69. Практика. Создание кнопок через код. Удаление каждой по клику.

Суть задачи — создать некоторое количество кнопок через цикл, и подвязать на каждую кнопку функцию удаления кнопки по клику.

Вроде бы всё просто. Но на деле всё будет работать не так как мы привыкли…

Создаем кнопки. Привязываем сигнал, и описываем функцию:

Запускаем :

-2

Нажимаем на любую кнопку :

-3

Неожиданно, но удаляются сразу все…

Пройдем в Remote, и видим, что удаляются не просто все кнопки, а вся сцена целиком !
Происходит это потому, что мы запускаем команду «удалить». А так как мы находимся в рутовой ноде — она и удаляется.

Подлечить это можно при помощи дополнительного аргумента. Если вы не забыли , в функцию можно передавать всё что угодно.
Чтобы программа хоть как то понимала на какую именно мы жмем кнопку — передадим аргументом её имя.
И в функции будем удалять уже непосредственно конкретную кнопку.

-4

Запускаем и видим что всё работает.

-5

За сим в общем то всё. Надеюсь вам был полезен данный материал.
Удачи !