|
Как изменить свойство "Вид" поля формы программно? |
☑ |
0
Aleksey1989
22.11.12
✎
12:48
|
Добрый день. Подскажите, пжл, как обратиться к свойству "Вид" поля формы программно? Т.е. мне, допустим, надо узнать, какой вид имеет определенное поле формы и исходя из этого выполнять определенные действия, например:
если вид = Поле флажка, то выполняется процедура1,
если вид = Поле ввода, то выполняется процедура2.
|
|
1
drcrasher
22.11.12
✎
12:49
|
Сформулируй вопрос так, чтобы он был понятен всем
|
|
2
Aprobator
22.11.12
✎
12:57
|
пятница завтра, а не сегодня. Есть стандартные события элемента управления. И нефиг извращаться.
|
|
3
Aleksey1989
22.11.12
✎
13:46
|
(1) Хорошо, попробую.
У меня есть 3 поля формы, из них 2 имеют вид полле ввода, а 1 - поле флажка. Задача: поменять заголовки ТОЛЬКО у полей ввода.
|
|
4
kosts
22.11.12
✎
13:49
|
(3) Что то в этом роде:
ТипЗнч(ЭлементыФормы.Поле1) = Тип("ПолеВвода")
|
|
5
kosts
22.11.12
✎
13:50
|
Опиши подробнее, может можно все проще сделать.
|
|
6
Aleksey1989
22.11.12
✎
13:53
|
(5) У меня есть поля ввода, для которых задан список выбора. Мне надо, чтобы при открытии в них по умолчанию подставлялось первое значение. Я придумал следующий код:
Для каждого Реквизит Из ЭтаФорма.Элементы Цикл
Если (СокрЛП(Реквизит) = "ПолеФормы") И (Реквизит.Доступность = Истина) Тогда
//Если Реквизит.Заголовок <> "поверхностный" и Реквизит.Заголовок <> "промежуточный" и Реквизит.Заголовок <> "парабазальный"
// и Реквизит.Заголовок <> "споры" и Реквизит.Заголовок <> "cпоры и нити мицелия" и Реквизит.Заголовок <> "Candida"
// и Реквизит.Заголовок <> "Leptothrix" и Реквизит.Заголовок <> "бластоспоры" тогда
Если Реквизит.Вид <> ВидПоляФормы.ПолеФлажка Тогда
Если Реквизит.СписокВыбора.Количество()> 0 Тогда
ЭтаФорма[Реквизит.Имя] = "0";
КонецЕсли;
конецЕсли;
КонецЕсли;
КонецЦикла;
|
|
7
kosts
22.11.12
✎
14:02
|
(6) Если полей не много 1-7 проще будет их просто просто перечислить.
ЗаполнитьЗначениеИзСписка(ПолеВвода1);
ЗаполнитьЗначениеИзСписка(ПолеВвода2);
ЗаполнитьЗначениеИзСписка(ПолеВвода3);
ЗаполнитьЗначениеИзСписка(ПолеВвода4);
Если много, то по типу или по имени (если имя одинаково начинается.
Если Лев(Поле.Имя, 9) = "ПолеВвода" Тогда
|
|
8
kosts
22.11.12
✎
14:05
|
Еще по типу значения можно отличить
ТипЗнч(ЭлементыФормы.Поле1.Значение) = Тип("Строка")
|
|
9
Aprobator
22.11.12
✎
16:20
|
ТипЗнч(ЭлементФормы) = Тип("ПолеФормы"); не отрабатывает?
|
|