Имя: Пароль:
1C
1С v8
(8.1 ЗУП) Внешней обработкой поменять картинку рабочего стола 1С
0 vechiy
 
21.10.11
15:59
Вот фигней страдаю.
Хочу внешней обработкой изменить фон рабочего стола 1С.

Пишу примерно следующее:

спанч=новый картинка("D:\SpongeBob_19.jpg");
Форма=Обработки.РабочийСтол.ПолучитьФорму("Форма");
Панель=Форма.ЭлементыФормы.Найти("ОсновнаяПанель");
Панель.Картинка=спанч;

Естественно, вылетаю с ошибкой:
{Форма.Форма(6)}: Поле объекта недоступно для записи (Панель)
       Панель=Форма.ЭлементыФормы.Найти("ОсновнаяПанель");


Как получить элемент формы, чтобы можно было его поменять?
1 KUBIK
 
21.10.11
16:31
(0) Я тож решил пострадать... :)))))
У меня получилось! : (вызываю из внешней обработки):

Процедура КнопкаВыполнитьНажатие(Кнопка)
   
Карт=новый картинка("D:\3.jpg");
Форма=Обработки.РабочийСтол.ПолучитьФорму("Форма");
Ред=Форма.ЭлементыФормы[0];
Ред.Картинка=Карт;
Форма.Обновить();

КонецПроцедуры
2 vechiy
 
21.10.11
16:38
почему элементыФормы[0]?
3 KUBIK
 
21.10.11
16:40
Индекс элемента: ОсновнаяПанель=0
4 KUBIK
 
21.10.11
16:41
+(3) ЗУП 2.5.37.1
5 vechiy
 
21.10.11
16:41
(3) ну эт я понял, я в том смысле, как узнать индекс?
6 KUBIK
 
21.10.11
16:42
Тупо цикл запусти по элементам формы и в строку сообщений выводи
7 KUBIK
 
21.10.11
16:44
Судя по фотке тож получилось? :))) Классно!
8 vechiy
 
21.10.11
16:45
не.. эт я руками делал. а в рабочей, пока все работают, не могу компилировать, хочу внешней)
сейчас попробую. у меня релиз более старый
9 vechiy
 
21.10.11
16:52
я глуп.
для каждого индекс из форма.ЭлементыФормы цикл
сообщить(индекс);
 КонецЦикла;

выводит названия
10 KUBIK
 
21.10.11
16:58
Для Сч=0 По Форма.ЭлементыФормы.Количество()-1 Цикл
   
   Пром=Форма.ЭлементыФормы[сч];
   Сообщить(Пром.Имя+" Индекс: "+Сч);
   
   
КонецЦикла;
11 vechiy
 
21.10.11
17:26
ага, индекс такой-же, 0. получилось, спасибо)
12 oreshka7387
 
21.10.11
18:32
ребят, а поделитесь, а?.. /состроила невинные просящие глазки/
AdBlock убивает бесплатный контент. 1Сергей