|
УФ. Создать флажок программно | ☑ | ||
---|---|---|---|---|
0
live in sky dreams
07.06.17
✎
17:24
|
Как создать флажок программно? Элемент формы..
Вылет в исключение при попытке: флВведенНаОсновании = Форма.Элементы.Добавить("флВведенНаОсновании", Тип("Флажок"), Контейнер); Ошибка: Тип не определен (Флажок) Гугол насчет флажков молчит.. поиск по форуму тоже |
|||
1
HEKPOH
07.06.17
✎
17:26
|
тип("ПолеФлажкаФормы")
|
|||
2
live in sky dreams
07.06.17
✎
17:34
|
Теперь ругается на "Недопустимое значение параметров"
|
|||
3
live in sky dreams
07.06.17
✎
17:35
|
У "Контейнер" тип "ГруппаФормы". Остальные параметры итак понятны... Что я делаю не так?
|
|||
4
live in sky dreams
07.06.17
✎
17:35
|
Все это происходит &НаСервере
|
|||
5
live in sky dreams
07.06.17
✎
17:40
|
Убрал Контейнер из "Добавить(..." ошибка та же...
Значит дело в Типе? |
|||
6
IoannVic
07.06.17
✎
17:46
|
Нужно добавлять поле формы. А у него указывать вид Флажок. И не забудь привязать реквизит булевный
|
|||
7
Неверный Параметр И
07.06.17
✎
17:46
|
Потому что Тип("ПолеФормы")
У полученного элемента поставишь .Вид = ВидПоляФормы.ПолеФлажка Такое впечателение, что за чтение СП вам отрубают руки, выкалывают глаза и выбрасывают в сточную канаву |
|||
8
Ц_У
07.06.17
✎
17:50
|
(7) нажал Ctrl-F1 - и ты больше не программист, только форум, только хардкор! :)
|
|||
9
aleks_default
07.06.17
✎
17:50
|
(7)Где об этом в СП? Дай выдержку.
|
|||
10
Ц_У
07.06.17
✎
17:51
|
||||
11
aleks_default
07.06.17
✎
17:54
|
(10)Это не СП. И у меня, например, туда доступа нет. А в СП написано просто параметр "ТипЭлемента" тип: Тип. Понимай как знаешь, или методом сэнсэя Тыка.
|
|||
12
Ц_У
07.06.17
✎
17:56
|
(11) за "нет доступа" предлагаю казнить, демо доступ на 7 дней не предлагать?
|
|||
13
Неверный Параметр И
07.06.17
✎
17:58
|
(11) > И у меня, например, туда доступа нет
Беееедненький! Возвращаемое значение: Тип: ДекорацияФормы; ГруппаФормы; КнопкаФормы; ТаблицаФормы; ПолеФормы. Ты серьезно думаешь, что можно передать на вход Тип("СправочникСсылка.Контрагенты") и получить в ответ ДекорацияФормы? |
|||
14
aleks_default
07.06.17
✎
18:00
|
(13)Вот ненадо притворятся тупым. Почему например (1) нельзя?
|
|||
15
Неверный Параметр И
07.06.17
✎
18:01
|
(14) Мда... Вдобавок к канаве, похоже еще и мозг через ноздрю...
|
|||
16
Ц_У
07.06.17
✎
18:12
|
(3) что же у нас по этому поводу говорит СП?
Добавить(<Тип>, <Имя>, <Видимость>, <ПоместитьНа>) О чем-нибудь говорит, намеки? |
|||
17
live in sky dreams
07.06.17
✎
18:12
|
Спасибо за живое обсуждение, на ИТС пробовал искать через механизм поиска "ПолеФлажкаФормы" - результ был 0. В СП не однозначно написано. Методом научного тыка-тыгдыка и отладчика допер до (6), (7)
|
|||
18
live in sky dreams
07.06.17
✎
18:15
|
(16)точно, тут же ясно сказано, что Тип должен быть "ПолеФормы" (сарказьма)
Я понимаю, возможно, когда уже знаешь это, все кажется очевидным, но когда впервые программно рисуешь на форме - все неочевидно и справка мало помогает в изучении нового. Это фича методических материалов 1С еще с семерки.. |
|||
19
Ц_У
07.06.17
✎
18:17
|
(18) тогда давай так, третий параметр - что?
|
|||
20
live in sky dreams
07.06.17
✎
18:18
|
(19)третий параметр в (16)- видимость, булево.
Что из этого следовать должно? |
|||
21
live in sky dreams
07.06.17
✎
18:20
|
А при добавлени элемента формы, третий параметр - контейнер, где этот элемент должен быть размещен как подчиненный.
К чему вы клоните? |
|||
22
Ц_У
07.06.17
✎
18:21
|
(21) кто сказал?
|
|||
23
Ц_У
07.06.17
✎
18:23
|
(21) У нас видимо разные СП
ЭлементыФормы (Controls) Добавить (Add) Синтаксис: Добавить(<Тип>, <Имя>, <Видимость>, <ПоместитьНа>) |
|||
24
live in sky dreams
07.06.17
✎
18:23
|
(22)Вот тут написано
http://prntscr.com/fh0ufc |
|||
25
live in sky dreams
07.06.17
✎
18:25
|
+(24) видимо, разные http://prntscr.com/fh0v2j
|
|||
26
Ц_У
07.06.17
✎
18:27
|
(25) тогда пойдем другим путем, без 3 параметра работает?
|
|||
27
Ц_У
07.06.17
✎
18:53
|
Вот не ломало же меня все это проверить?
&НаСервере Процедура НаСервере() МассивТиповБулево = Новый Массив; МассивТиповБулево.Добавить(Тип("Булево")); //добавим реквизит с типом "Булево" РеквизитФлаг = Новый РеквизитФормы("ФлагФормы",Новый ОписаниеТипов(МассивТиповБулево),,"Флажочек"); //сунем его в массив НовыеРеквизиты = Новый Массив; НовыеРеквизиты.Добавить(РеквизитФлаг); //сунем массив в форму ИзменитьРеквизиты(НовыеРеквизиты); //создадим "визуализацию" того копрокода, что сверху НовыйЭлемент = Элементы.Добавить("ФлагФормы",Тип("ПолеФормы")); НовыйЭлемент.ПутьКДанным = "ФлагФормы"; НовыйЭлемент.Вид = ВидПоляФормы.ПолеФлажка; КонецПроцедуры |
|||
28
live in sky dreams
08.06.17
✎
08:49
|
(27) Это хорошо, что не ломало. Почет и уважение таким форумчанам. Без иронии.
Только вы не поняли, что я допер до этого еще на стадии (6),(7) Единственный мой затык был в том, что я не понимал, что по логике 1С флажок, как и многие другие управляющие элементы формы, имеет тип "ПолеФормы" + меня сбивали с толку "ПолеФлажкаФормы" и другие более "узко именованные" типы в автокомплите. Еще раз спасибо |
|||
29
live in sky dreams
08.06.17
✎
08:56
|
(27)Кстати, почему "копрокода"?
Именование переменных человеческое, без "СтрПрМр".. Код разбит на блоки. Да и, на сколько мне известно, реквизиты на форме программно размещаются именно так. Что не так с кодом? (у меня получается примерно такой копрокод, хочу знать что с ним не так) |
|||
30
aleks_default
08.06.17
✎
09:03
|
(29)Все нормально с этим кодом, просто человека у все в порядке с самооценкой.
|
|||
31
Ц_У
08.06.17
✎
10:21
|
(29) Самый эффективный способ - сделать реквизит на форме и в отладчике посмотреть, нужные тебе, его тип и свойства, а не пытаться угадать.
(30) Да |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |