Сохранить состояние button не используя глобальную переменную

 
Здравствуйте, мои любимые форумчане, могли бы вы подсказать:

Создаю 2 кнопки button в Oninit
В OnCharEvent по нажатию на 1-ю кнопку показываю 2-ю кнопку, еще по нажатию на 1 кнопку  - удаляю 2-ю кнопку.

Проблема и вопрос заключается в том, как мне сохранять состояние 2-й кнопки, ЕСЛИ:

1) не использовать способ не удаления - а скрытия(за границы экрана) кнопки, тобишь я создаю кнопку с положение по Х = -9000 например(за экран), а потом вместо удаления просто меняю её координаты.
На данный момент я использую этот вариант так как он рабочий и состояние кнопки при этом не меняется.


2) не используя глобальную переменную(опять же может её и нужно использовать, но это пример для 2-х кнопок, а если у меня их 30, то для каждой нужно своя переменная, мне кажется это не правильно)

 
Состояние кнопки сохранить в переменной. Если кнопок 30, то, соответственно, массив. Если эти состояния нужно сохранять между запусками программы, то запись в файл или в глобальные переменные терминала.
 

Вообще-то, именно для этого в MQL присутствуют статические данные (модификатор static). 

Эти данные инициируются ровно один раз, в момент прикрепления программы к окну MT и удаляются в момент удаления программы. 

Если живете на антресолях и не верите в электричество, то есть еще варианты: 1. Глобальные переменные, если понимаете, что это такое. 2. Глобальные переменные терминала, либо файлы, что почти одно и тоже. 3. Записочка карандашиком. 

 
Ihor Herasko #:
Состояние кнопки сохранить в переменной. Если кнопок 30, то, соответственно, массив. Если эти состояния нужно сохранять между запусками программы, то запись в файл или в глобальные переменные терминала.

Вы, вроде, программируете и водку не уважаете. Отчего так? ... 

 
非表示にした"OBJ_LABEL"の"OBJPROP_TEXT"プロパティに値をセットする

OnInit()で値を読み込み、変更時に値をセットすればよいです

 
Yutaka Okamoto #:
非表示にした"OBJ_LABEL"の"OBJPROP_TEXT"プロパティに値をセットする

OnInit()で値を読み込み、変更時に値をセットすればよいです

ግልጽ በሆነ መልኩ አብራሩት

Причина обращения: