Имя: Пароль:
1C
1C 7.7
v7: Увеличить шрифт списка значений + правильный перехват события
0 ildary
 
04.07.14
16:42
Уважаемые специалисты, подскажите пожалуйста способ увеличения списка значений, не атрибута формы (там прекрасно работает формекс), а при вызова метода ВыбратьЗначение() для программного объекта. Установлены Formex и 1CPP.

Второй вопрос - как правильно перехватить вызов процедуры ПриНачалеВыбораЗначения() для всех форм документв? Потребовалось сделать свою обработку изменения общего реквизита Фирма, не хотелось бы лазить по всем документам и вставлять ИначеЕсли ЭлементДиалога = "Фирма" Тогда....
1 Ёпрст
 
гуру
04.07.14
16:58
(0) пользуй Сервис и там ВыбратьЗначение.. а там что угодно - шрифты, картинки - цвет
2 Ёпрст
 
гуру
04.07.14
16:59
+1 для второго, достаточно задействовать Класс Перехватчик.
3 Ёпрст
 
гуру
04.07.14
17:00
ну и..если не хочешь класс - то создайеще одну форму выбора фирмы, назначь её как форму выбора, ей в ПриОткрытии статусВозврата(0) + открытие твоей супер-мупер формы..
4 ildary
 
04.07.14
17:10
Спасибо за совет, но в als формекса сказано, что последний параметр процедуры - ПараметрыЦвета, а в chm - что это ссылка на шрифт - можно спросить где правда?

У элемента формы Фирма включен фладок "Быстрый выбор" - наверное форма выбора значения тут не сработает. А насчет класса перехватчик - он стабильный? Если да, то попробую
5 Ёпрст
 
гуру
04.07.14
17:22
(4) для примера

Процедура ЛегкоеСообщение ( Текст )//©blindvic
        СпЗн = СоздатьОбъект("СписокЗначений");
        СпЗн.ДобавитьЗначение(" ", "   ");
        СпЗн.ДобавитьЗначение(1, "   " + СокрЛП(Текст) + "   ");
        СпЗн.ДобавитьЗначение(" ", "   ");
        ПараметрыРаскраски = СоздатьОбъект("СписокЗначений");
        ПараметрыРаскраски.Установить("ЦветФонаВыделения", 16764159);
        ПараметрыРаскраски.Установить("ЦветШрифтаВыделения", 0);
        ПараметрыРаскраски.Установить("ЦветРамкиВыделения", 16764159);
        ПараметрыРаскраски.Установить("ЦветФона", 16764159);
        ПараметрыРаскраски.Установить("ЦветШрифта", 0);
        Сервис.ВыбратьЗначение(СпЗн, СпЗн, , , 2, , ПараметрыРаскраски);
КонецПроцедуры
6 varelchik
 
04.07.14
17:27
(4) Еще как стабильный!
7 Ёпрст
 
гуру
04.07.14
17:31
только на счет размера шрифта, я не помню ужо.. в старой версии там да, шрифт задавался, в новой - хз.. вроде только цвет.

можно еще через дюнаврап решение посмотреть
8 ildary
 
04.07.14
17:35
(7) насчет старая/новая - 2.5.0.109 - это какая? Кстати, если подставить в ПараметрыРаскраски вместо списка значений номер созданного шрифта - то все получается.

(6) ок, спасибо, попробую.
9 varelchik
 
04.07.14
17:38
(0) На счет шрифта
:
    ФабрикаОбъектов=СоздатьОбъект("ФабрикаОбъектов");
    лШрифт=ФабрикаОбъектов.Шрифт("MS Sans Serif",8,1);
что-то типа этого.
10 Злопчинский
 
04.07.14
21:27
говорят, что созданные шрифты надо не забывать уничтожать...