Имя: Пароль:
1C
1С v8
Как вставить Текст в Рисунок?
0 AndrewMuzik
 
14.01.13
04:08
Доброго всем времени суток!
Добавляю элемент "Картинка - Текст" на Макет,кнопкой: "Вставка рисунка - Текст".
Элемент получает некое имя, в моем случае D158.
[URL=http://www.radikal.ru][IMG]http://s017.radikal.ru/i444/1301/1c/dd3e87a19a16.jpg[/IMG][/URL]
Как программно изменить текст этого элемента?

ТабДокумент = Новый ТабличныйДокумент();
ОбратнаяСторона = Макет.ПолучитьОбласть("ОбратнаяСторона");

ОбратнаяСторона.Параметр.D158 = Текст; //Так работать не будет, так как это не ячейка.

Подскажите, пожалуйста, как установить текст программно?

И второй вопрос. Таких рисунков у меня 14. Имена с D158 до D171.
Можно ли в цикле изменять имя ячейки?

Пример:
x=0;
Пока {УСЛОВИЕ} Цикл
ОбратнаяСторона.Картинка.[D158+x].Текст = "Текст";  //
x=x+1;
КонецЦикла;

Иначе прийдется писать условие Если х=0 Тогда, и так для всех 14-ти элементов. Что само по себе не очень "Кашерно".
1 AndrewMuzik
 
14.01.13
04:11
С Радикалом не очень работает
Тогда вот так фото:
http://s017.radikal.ru/i444/1301/1c/dd3e87a19a16.jpg
2 kosts
 
14.01.13
06:41
ТабличныйДокумент.Рисунки
3 DirecTwiX
 
14.01.13
07:04
Место для клея же
4 AndrewMuzik
 
14.01.13
07:14
(3) Что место для клея? Это объединенные ячейки.
5 cw014
 
14.01.13
07:50
(3) Место для клея - отпад
6 AndrewMuzik
 
14.01.13
08:02
(5) Все слизано с уведомления о вручении Почты России :) Видимо если это поле сделать меньше начнут промахиваться :)
7 AndrewMuzik
 
14.01.13
09:10
Больше ни каких идей?

{Документ.Делопроизводство_РеестрИсходящих.МодульОбъекта(113)}: Поле объекта не обнаружено (D158)
     ОбратнаяСторона.Параметры.D158 = "Текст";


Поле объекта не обнаружено (D158) - Вот как это побороть?
8 Asmody
 
14.01.13
09:13
(7) собрать рисунки в массив не пробовал?
9 AndrewMuzik
 
14.01.13
09:14
(8) Нет. Зачем?
10 Asmody
 
14.01.13
09:16
(9) чтоб не париться с именами
11 AndrewMuzik
 
14.01.13
09:27
хм...А как я их потом буду на печатной форме отображать?
Извините, но я что-то вообще не понял, как это связанно с моим вопросом.
Есть у меня печатная форма(макет). Добавляю на макет "Рисунок - текст" (Есть такая кнопка в конструкторе "Вставить рисунок - текст"). Такой рисунок получает Имя: D158 (Имя присваивается Автоматом).
Как программно достучаться до такого рисунка, чтобы вставить свой текст?
ОбратнаяСторона.Параметры.D158 - Работать не будет, так как это не ячейка, а картинка.
ОбратнаяСторона.Рисунки.D158.УстановитьТекст(); - получаю: Поле объекта не обнаружено (D158)

Пробовал еще с десяток вариантов, которые Гугл подсказывал...Но дальше "Поле объекта не обнаружено (D158)" не могу продвинуться. Уже идеи и запросы в гугл закончились...
12 kosts
 
14.01.13
09:45
Все работает
http://s019.radikal.ru/i637/1301/35/d21c42ab9409.jpg


Макет = ПолучитьМакет("Макет");
ОбластьСтрока = Макет.ПолучитьОбласть("Строка");
ОбластьСтрока.Рисунки.МояКартинка1.Текст = "1";
ОбластьСтрока.Рисунки["МояКартинка2"].Текст = "2";
ОбластьСтрока.Параметры.ПараметрВРисунке3 = "3";

ТабДок = новый ТабличныйДокумент;
ТабДок.Вывести(ОбластьСтрока);
ТабДок.Показать();


Проверь, что бы твои картинки находились целиком в необходимой области.
13 AndrewMuzik
 
14.01.13
09:55
(12) Вы сами задавали имя картинкам?
Странно, но 2 верхних варианта пробовал.
Сейчас еще раз перепроверю и попробую имена задать вручную.
14 kosts
 
14.01.13
09:56
(13) >Вы сами задавали имя картинкам?
Конечно
15 AndrewMuzik
 
14.01.13
09:56
(12) Проверь, что бы твои картинки находились целиком в необходимой области.
http://s017.radikal.ru/i444/1301/1c/dd3e87a19a16.jpg
Промазать невозможно. Картинка маленькая.
16 AndrewMuzik
 
14.01.13
10:01
Действительно:
ОбластьСтрока.Рисунки.МояКартинка1.Текст = "1";
ОбластьСтрока.Рисунки["МояКартинка2"].Текст = "2";

Работает, если имя картинки задать вручную.
А если использовать те, что программа выдает автоматом получаем:

Поле объекта не обнаружено (D160)
ОбратнаяСторона.Рисунки.D160.Текст = "11";
17 AndrewMuzik
 
14.01.13
10:03
Эксперимента ради.
Поле объекта не обнаружено (D161)
ОбратнаяСторона.Рисунки["D161"].Текст = "22";

Тоже самое.
18 AndrewMuzik
 
14.01.13
10:07
kosts, Спасибо! :)
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший