![]() |
![]() |
![]() |
|
Заполняю Дерево (ТЗ), как заполнить картинку? | ☑ | ||
---|---|---|---|---|
0
чупа
04.07.08
✎
06:18
|
В каждой строке дерева предполагается своя картинка.
Как это сделать не могу найти. Пусть для примера это будет одна и таже стандартная картинка РегистрСведенийЗапись. Как ее вывести в отдельный столбец каждой строки таблицы значений? |
|||
1
чупа
04.07.08
✎
09:19
|
Че такой сложный вопрос?
Как мне заполняя свою таблицу значений, не привязанной к справочнкам и регистрам, во внешней обработке, вывести в отдельный столбец картинку? как здесь http://img74.imageshack.us/img74/379/33956842ua8.jpg картинка предполагается быть разной для каждой строки, в зависимости от содержимого другого столбца. |
|||
2
Ёпрст
гуру
04.07.08
✎
09:42
|
(0) Переходи на клюшки - там это реализовано!
|
|||
3
чупа
04.07.08
✎
09:46
|
а?
|
|||
4
Кураж
04.07.08
✎
09:49
|
Не слушай дятлов )
Самый простой вариант устанавливать при выводе строки: Процедура ПользователиПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки) Если ДанныеСтроки.Колонка1=... Тогда ОформлениеСтроки.Ячейки.Колонка2.УстановитьКартинку(БиблиотекаКартинок.РегистрСведенийЗапись); Иначе ... КонецЕсли; КонецПроцедуры Ещё можно свойству КартинкиСтрок нужного столбца присвоить коллекцию картинок, а при добавлении строки только устанавливать идекс нужной картинки, тогда ПриВыводеСтроки() ничего делать не нужно... |
|||
5
чупа
04.07.08
✎
09:55
|
(4) большое тебе человеческое спасибо!
|
|||
6
Кураж
04.07.08
✎
09:56
|
(5) на здоровье, читай ИТС, там расписано всё подробно...
|
|||
7
Stepa86
04.07.08
✎
10:13
|
Нормальные перцы делают так: 1) создаем коллекцию картинок из которой будем брать необходимую
2) Задаем в понравившейся нам колонке свойство ДанныеКартинки имя индекса, например "ИндексКартинки" 3) В свойство КартинкаСтрок прописываем коллекцию 4) При заполнении строк дерева указываем че то вроде МоеДерево.ИндексКартинки = 5; (ИндексКартинки можно сказать отдельная колонка) 5) Радуемся результату без гимора с выводомстроки |
|||
8
Stepa86
04.07.08
✎
10:13
|
или короче (4) +1 =)
|
|||
9
чупа
04.07.08
✎
19:39
|
господа, еще пара вопросов :)
1. Вы сказали >> Ещё можно свойству КартинкиСтрок нужного столбца присвоить коллекцию картинок Как сделать свою коллекцию картинок из нескольких стандартных? Конфигурация-Общие картинки? А как потом всю коллекцию присвоить свойству КартинкиСтрок? Получается присваивать отлько одну картинку. 2. Задаю свойству КартинкиСтрок картинку РегистрСведенийЗапись. Затем при выводе строки устанавливаю ИндексКартинки = 0, показывает синий рисунок (как надо). А ставлю ИндексКартинки = 1, показывает тот же рисунок но чернобелый! Он мне тоже нужен, но его выкусить никак не могу! Сохраняю и пр. получается только один синий. Как достать чернобелый? |
|||
10
Кураж
04.07.08
✎
19:49
|
(9) Блин, товарищ, ну почитай ИТС, там гораздо лучше написано чем я расскажу...
|
|||
11
чупа
04.07.08
✎
19:51
|
нету у меня щас
|
|||
12
Кураж
04.07.08
✎
20:04
|
(11) ЕСИС скачай, всему учить надо?... )
|
|||
13
чупа
04.07.08
✎
20:08
|
я не могу скачать, я хочу доделать небольшой участок и спать пойти, у меня 3 часа ночи
так сложно подсказать? |
|||
14
Кураж
04.07.08
✎
20:12
|
(13) Ну вот тока потому что у тебя 3 часа ночи...
|
|||
15
Кураж
04.07.08
✎
20:12
|
Отображение картинок в табличном поле
Отображение картинок в колонках табличного поля имеет ряд особенностей. Так, если табличное поле отображает таблицу значений или дерево значений, можно установить необходимой колонке табличного поля колонку картинки. Для этого необходимо в палитре свойств в свойстве "Данные картинки" колонки табличного поля указать имя колонки картинки(при этом соответствующая колонка автоматически добавится в таблицу или дерево значений), а в свойстве "Картинки строк" указать картинку - коллекцию, содержащую все необходимые картинки. Стоит отметить, что картинки, составляющие коллекцию, должны быть расположены горизонтально и иметь размер 16 x 16 точек. Далее, при заполнении таблицы значений или дерева значений необходимо в колонке картинки установить индекс картинки в этой коллекции. Приведенный ниже пример показывает, как отобразить картинки в табличных полях, отображающих таблицу и дерево значений. В этом примере используется два табличных поля, каждое из табличных полей содержит по одной колонке - колонке картинки. Первое из них отображает таблицу значений (реквизит ТЗ) , а второе дерево значений (реквизит ДЗ). |
|||
16
Кураж
04.07.08
✎
20:12
|
Заполнение источников данных происходит при обработке события ПередОткрытием() формы:
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка) Перем Стр, Стр1; // Заполнение таблицы значений Для Сч = 0 по 6 Цикл Стр = ТЗ.Добавить(); Стр.Картинка = Сч; КонецЦикла; // Заполнение дерева значений Для Сч = 0 по 6 Цикл Стр = ДЗ.Строки.Добавить(); Стр.Картинка = Сч; Для Сч1 = 0 по 2 Цикл Стр1 = Стр.Строки.Добавить(); Стр1.Картинка = 1; КонецЦикла; КонецЦикла; КонецПроцедуры Также можно связать данные картинки колонки табличного поля с колонкой таблицы значений, содержащей собственно картинку. Для этого необходимо при заполнении таблицы значений присваивать картинки соответствующей колонке. Затем связать колонку таблицы значений с колонкой табличного поля, отображающей картинку. В приведенном ниже примере используется табличное поле ТабличноеПоле1 содержащее одну колонку (Колонка1), отображающую картинку. |
|||
17
Кураж
04.07.08
✎
20:12
|
Заполнение таблицы значений происходит при обработке события формы ПередОткрытием(). Сначала в таблицу значений (реквизит ТЗ) добавляется колонка картинки (Картинка), затем происходит заполнение таблицы значений. В конце осуществляется привязка колонки таблицы значений к колонке табличного поля. Для этого используется свойство ДанныеКартинки колонки табличного поля.
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка) Перем Стр; ТЗ.Колонки.Добавить("Картинка"); // Заполнение таблицы значений Для Сч = 0 по 10 Цикл Стр = ТЗ.Добавить(); Если Сч % 2 = 0 Тогда Стр.Картинка = БиблиотекаКартинок.Справка; Иначе Стр.Картинка = БиблиотекаКартинок.Важно; КонецЕсли; КонецЦикла; ЭлементыФормы.ТабличноеПоле1.Колонки.Колонка1.ДанныеКартинки = "Картинка"; КонецПроцедуры Существует также другой способ отображения картинок в табличном поле. Для этого необходимо использовать событие табличного поля ПриВыводеСтроки(). Этот способ подходит для табличных полей, отображающих как динамические списки так и статические данные. При использовании данного способа картинку необходимо устанавливать при обработке события ПриВыводеСтроки(). Приведенный ниже пример показывает типичное применение этого способа. В этом примере используется табличное поле, отображающее таблицу значений. Табличное поле содержит две колонки: колонку картинки (Колонка1) и колонку данных (Колонка2). |
|||
18
Кураж
04.07.08
✎
20:12
|
Таблица значений заполняется при обработке события ПередОткрытием() формы:
Процедура ПередОткрытием(Отказ, СтандартнаяОбработка) Перем Стр; // Заполнение таблицы значений Для Сч = 0 по 10 Цикл Стр = ТЗ.Добавить(); Стр.Колонка2 = Сч; КонецЦикла; КонецПроцедуры Картинки для первой колонки устанавливаются при обработке события ПриВыводеСтроки(). Следует заметить, что в приведенном примере для демонстрации возможностей используются два метода установки картинки: используя свойство ИндексКартинки отображаемой ячейки и используя метод УстановитьКартинку(). |
|||
19
Кураж
04.07.08
✎
20:13
|
Процедура ТабличноеПоле1ПриВыводеСтроки(Элемент, ОформлениеСтроки, ДанныеСтроки)
Если ДанныеСтроки.Колонка2 = 0 Тогда // Установка картинки через метод УстановитьКартинку. Используется картинка. // из библиотеки картинок ОформлениеСтроки.Ячейки.Колонка1.УстановитьКартинку(БиблиотекаКартинок.Важно); Иначе // Установка картинки из коллекции. Используется индекс картинки в коллекции. ОформлениеСтроки.Ячейки.Колонка1.ИндексКартинки = ДанныеСтроки.Колонка2 % 10; ОформлениеСтроки.Ячейки.Колонка1.ОтображатьКартинку = истина; КонецЕсли; КонецПроцедуры |
|||
20
Кураж
04.07.08
✎
20:13
|
Читаешь ВНИМАТЕЛЬНО, чё не понятно, спрашиваешь.
|
|||
21
чупа
04.07.08
✎
20:17
|
че тут читать, все было сказано
вот ответ Стоит отметить, что картинки, составляющие коллекцию, должны быть расположены горизонтально и иметь размер 16 x 16 точек. сразу сказать не мог чтоли ппц форум на 30 дебилов 1-2 нормальных человека помощь окажут |
|||
22
Кураж
04.07.08
✎
20:18
|
Картинки в коллекцию соединяешь в каом-нибудь графическом редакторе, например Paint-е том же. Они идут по индексам 0 - первые 16 пикселей, 1 - вторые и т.д. При добавлении строки делаешь: НовСтр.Картинка=0; например...
Свойство КартинкиСтрок в палитре свойств (по колонке правой кнопкой). Что ещё?... |
|||
23
Кураж
04.07.08
✎
20:19
|
(21) это вместо благодарности?... А потом удивляется ещё...
|
|||
24
чупа
04.07.08
✎
20:44
|
(23) спасибо, друг! :)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |