Добрый день!

Решил сделать красивые рамки вокруг кнопов к в рознице и в 2.2 все работало. Нажимаю на кнопку и в коде меняется цвет рамки чтобы пользователь видел какую кнопку нажал. Так вот, дело в том что при первом нажатии цвет присваивается. Далее нажимаю второй раз и рамка пропадает. Третий, четвертый пятый - не появляется. Ставлю точку остановки в конце процедуры - цвет синий всегда как и выставляю. Но главное если вызову меню или еще какие действия кнопка снова станет синий, а вот от повторного нажатия снова рамка пропадает.

Голову уже сломал, что это такое, глюк или фича.

Пожалуйста помогите убогому понять что это за хрень.
---
Проблему удалось решить выполнив код изменения цвета рамки на сервере.
---
Проблему удалось решить выполнив код изменения цвета рамки на сервере.
---
При этом выделение сбрасывается со всех картинок в группе.Те картинки что в других группа остаются выделены. Если повторить тоже для другой группы, результат такой же. Может все таки кто-нибудь хоть на мысль наведет?
---
Возможно срабатывает какой-то обработчик ожидания, перерисовывающий кнопки.
---
Возможно, но маловероятно, цвет рамки пропадает только при повторном нажатии. По времени не изменяется.
---
Опытным путем выяснил что без этого кода все работает.

Для Каждого Группа из ЭтаФорма.Элементы.ГруппыТоваров.ПодчиненныеЭлементы Цикл

  Если Группа.Имя <> "ГруппаТовара" +ТекущийТовар Тогда
   Группа.Видимость = Ложь;
  КонецЕсли;

КонецЦикла;

Но в том то и дело что кнопки с которых пропадает рамка находятся совсем в другом месте формы.
---
Моя любимая ошибка - ставить видимость Ложь набору элементов, никому из них при этом не возвращая Истина при смене условий...
---
Вы не могли бы пояснить о чем речь? Вообще там по коду далее тому который Группа.Имя = "ГруппаТовара" +ТекущийТовар присваивается видимость истина. не в этом дело именно от того что одна группа становится видимой а другая скрывается, у меня вообще в другом углу формы у кнопок пропадает рамка. При этом если смотреть отладчиком, то выяснится что цвет назначен.
---
Я только про код. У вас в цикле идет отключение групп, имя которой не коррелирует с неким "текущим значением". Предполагаю, что это значение может интерактивно меняться... Например,
1. У вас есть три кнопки - Хлеб, Пиво, Телефон. У всех трех кнопок видимость = Истина;
2. Вы программным образом назначаете текущей кнопкой Пиво. Ваш код в цикле отключает видимость у всех, кроме Пива. Итого: Хлеб-Ложь, Пиво-Истина, Телефон-Ложь.
3. Затем вы программным или интерактивным образом назначаете текущей кнопкой Хлеб. Ваш код в цикле отключает видимость у всех, кроме Хлеба. Итого: Хлеб-Ложь, Пиво-Ложь, Телефон-Ложь. (Уже все Ложь, да? На второй итерации, причем)
4. Теперь вы можете назначать сколь угодно и в каком угодно порядке текущие значения - ни одна кнопка в Видимость=Истина уже никогда не вернется. Потому что в вашем коде нет такой установки.

Я только об этом. Надо не только отключать видимость у "ненужных" элементов, но и возвращать видимость "нужным" элементам.

Проще это делать так (в вашем случае):

```1c
    Группа.Видимость = (Группа.Имя = "ГруппаТовара" +ТекущийТовар);
```
---
При этом в РКМ есть вот такой код Элементы.ГруппаПрочихОпераций.Видимость = НЕ Элементы.ГруппаПрочихОпераций.Видимость; который на рамки вообще не влияет. Я просто уже не могу.
---
Он и не должен влиять на рамки, потому что он влияет на группу...
---
Но блин влияет почти аналогичный код который скрывает одну и показывает другую влияет. При этом в Рознице 2.2 все работало. Может глюк? Кэш я чистил. Голова уже едет.