Oceangrave Posted April 11, 2022 Share Posted April 11, 2022 Всех сердечно приветствую. Имею генерацию чекбосов в скролл контейнер, чекбосы создаются из прототипа. У прототипа соответственно есть реакция: <Reaction>checkbox_click</Reaction> Собственно в чем вопрос. Можно ли как-то каждому сгенерированному чекбоксу забахать свою реакцию на нажатие? Вообще насколько оправдан такой подход, возможно ли реализовать такое или придётся прибегнуть к варианту "Определяю все заранее"? Сама генерация: function WidgetButtons:GenerateDefaultCheckBoxList() local desc_ch = WidgetPanels.SliderContentReferencePanel:GetWidgetDesc() for i=0, 1 do local wtNeww = mainForm:CreateWidgetByDesc(desc_ch) local descriptText = wtNeww:GetChildChecked("Description",false) descriptText:SetVal("value", userMods.ToWString(GTL("CheckBox"..i)) ) WidgetPanels.SliderCheckBoxContainer:PushBack( wtNeww ) wtNeww:Show(true) end end Quote Link to comment Share on other sites More sharing options...
Slashuur Posted April 11, 2022 Share Posted April 11, 2022 Как вариант, при создании виджета можно давать ему имя через SetName. Например: Button[i]:SetName( "MyButton_"..i ) Потом в реакции проверять, например, так: if tonumber( string.sub( params.sender, 10 )) == ... then 1 Quote Link to comment Share on other sites More sharing options...
Oceangrave Posted April 11, 2022 Author Share Posted April 11, 2022 (edited) 23 минуты назад, Slashuur сказал: Как вариант, при создании виджета можно давать ему имя через SetName. Например: Button[i]:SetName( "MyButton_"..i ) Потом в реакции проверять, например, так: if tonumber( string.sub( params.sender, 10 )) == ... then Что-то я даже и не подумал про такой вариант. Благодарю, попробую p.s В общем я немного дурачек, надо было еще вытащить из контейнера кнопку и назначить ей имя как вы и описали, в итоге все сработало. Edited April 11, 2022 by Oceangrave Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.