Кнопки диалога, как поставить переменную на кнопку?
я 0 в jass но пробовал что то этого
local udg_Choose[50] GetLastCreatedButtonBJ()
GetLastCreatedButtonBJ() - ошибка

Принятый ответ

set udg_choose[0] = GetLastCreatedButtonBJ()
Так, как варик может подтупливать, то вечная проблема на 1.26 и 1.27 - то что GetLastCreatedButtonBJ() и вообще эта событийно - ориентированная хрень, когда нужно сохранять последнее созданое что - то вечно косячит. Это я все к тому, что если глобалки стоят в очереди, то варик может затупить и не понять, какая из них только что созданная.
Лучше локалку, так надеждее
set (u) choose[0] = GetLastCreatedButtonBJ()
( у и создать вначале локальную, потом если что скопировать в глобалку по необходимости и обнулить) Это само -собой!
`
ОЖИДАНИЕ РЕКЛАМЫ...
0
13
1 год назад
0
set udg_choose[0] = GetLastCreatedButtonBJ()
0
29
1 год назад
0
Так поставь на гуи и конвертани.
1
19
1 год назад
Отредактирован SсRealm
1
set udg_choose[0] = GetLastCreatedButtonBJ()
Так, как варик может подтупливать, то вечная проблема на 1.26 и 1.27 - то что GetLastCreatedButtonBJ() и вообще эта событийно - ориентированная хрень, когда нужно сохранять последнее созданое что - то вечно косячит. Это я все к тому, что если глобалки стоят в очереди, то варик может затупить и не понять, какая из них только что созданная.
Лучше локалку, так надеждее
set (u) choose[0] = GetLastCreatedButtonBJ()
( у и создать вначале локальную, потом если что скопировать в глобалку по необходимости и обнулить) Это само -собой!
Принятый ответ
0
29
1 год назад
Отредактирован nazarpunk
0
то варик может затупить и не понять, какая из них только что созданная.
Ниправда, у варика нет состояния гонки и весь код будет выполнен поочерёдно. А проблемы с событиями в большинстве случаев возникают из-за криворукости мапмейкеров.
И коль хочется в оптимизацию, то BJ нужно раскрывать:
set MyButton = DialogAddButton(whichDialog, buttonText,0)
0
17
1 год назад
0
SсRealm, get last created что либо - это вообще бредовая выдумка, с кучей проблем в работе. Особенно если постоянно юзать её, а не для первоначального определения чего либо. Зачем её ввести в гуи - непонятно. Лучше бы локалки ввели.
0
29
1 год назад
0
EugeAl, оно сделано только для гуй и должно использоваться только в гуе. С переходом на код о GetLastCreatedSomeone принято сразу же забывать.
0
13
1 год назад
Отредактирован Borodach
0
SсRealm, get last created что либо - это вообще бредовая выдумка, с кучей проблем в работе. Особенно если постоянно юзать её, а не для первоначального определения чего либо. Зачем её ввести в гуи - непонятно. Лучше бы локалки ввели.
Такая штука, что функция, к примеру, должна вернуть "хендл". После возврата значения, все последующие команды не выполняться, та созданная локальная зависнет в памяти и у тебя не получится устранить утечку. Так вот ети глобальные lastCreated, удобний "транспортировщик" чтоб избежать утечек.
0
17
1 год назад
0
Borodach, Но если такая функция будет вызвана 2 раза за короткое время, первый last created может затеряться. Особенно если функция растянута во времени, то есть имеет вейты.
nazarpunk, Так даже в гуи она проблемы может создать... Last created group хорошо это показывает, с утечками групп.
1
29
1 год назад
1
та созданная локальная зависнет в памяти и у тебя не получится устранить утечку
Самое простое объяснение утечек - если при выходе из функции локальная переменная будет содержать что-то напоминающее handle, то будет выделена память, которую невозможно утилизировать.

Так даже в гуи она проблемы может создать...
Я больше к коду привык, так что в утечках гуй не разбираюсь.
1
13
1 год назад
1
Borodach, Но если такая функция будет вызвана 2 раза за короткое время, первый last created может затеряться. Особенно если функция растянута во времени, то есть имеет вейты.
nazarpunk, Так даже в гуи она проблемы может создать... Last created group хорошо это показывает, с утечками групп.
Нужно сначала создать локальную, затем создать юнита/кнопку/текстаг или другое, локальную установить = lastCreated и только потом вейт, тогда ничего не затеряеться.
Именно в групах создаеться локальная и она же возвращаеться, то есть не проходит очистка
0
17
1 год назад
0
Borodach, лучше уж тогда БД делать, чтобы и наслоений не было, и утечек. или на код переходить)
0
29
1 год назад
0
и только потом вейт
Ты серьёзно предлагаешь использовать вэйт?
0
13
1 год назад
0
Ты серьёзно предлагаешь использовать вэйт?
Нет, я прелагаю вартант как не потерять "объект" когда используют вэйт.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.