Имя: Пароль:
1C
1С v8
Поменять расположение реквизита формы программно
0 N-S-B
 
21.07.17
12:14
Добавляю реквизит на форму программно, он естественно добавляется в самый низ группы. Хочу его переместить наверх, в идеале, конечно, конкретно указать между какими элементами формами он должен располагаться.

НовыйЭлемент = Элементы.Добавить("Булево" , Тип("ПолеФормы"), ЭтаФорма.Элементы.Группа1);
НовыйЭлемент.Вид = ВидПоляФормы.ПолеФлажка;
НовыйЭлемент.ПутьКДанным = "Объект.Булево";
НовыйЭлемент.ВертикальноеПоложениеВГруппе = ВертикальноеПоложениеЭлемента.Верх;

НовыйЭлемент.ВертикальноеПоложение = ВертикальноеПоложениеЭлемента.Верх; //так же не дает результата
1 Рэйв
 
21.07.17
12:24
ВсеЭлементыФормы (FormAllItems)
Вставить (Insert)
Синтаксис:

Вставить(<Имя>, <ТипЭлемента>, <Родитель>, <Элемент>)
Параметры:

<Имя> (обязательный)

Тип: Строка.
Уникальное имя добавляемого элемента.
<ТипЭлемента> (обязательный)

Тип: Тип.
Тип добавляемого элемента.
<Родитель> (необязательный)

Тип: ГруппаФормы; ТаблицаФормы; УправляемаяФорма.
Родитель для добавляемого элемента.
Если не указан, то вставляется на верхний уровень.
<Элемент> (необязательный)

Тип: ДекорацияФормы; ГруппаФормы; КнопкаФормы; ТаблицаФормы; ПолеФормы.
Элемент, перед которым должен быть вставлен новый элемент. Если не указан, то элемент будет вставлен в конец.
Возвращаемое значение:

Тип: ДекорацияФормы; ГруппаФормы; КнопкаФормы; ТаблицаФормы; ПолеФормы.

Описание:

Вставляет элемент в коллекцию элементов.

Доступность:

Сервер, мобильное приложение(сервер).
2 Рэйв
 
21.07.17
12:24
4-й параметр - это твое
3 N-S-B
 
21.07.17
12:37
Не могу разобраться, как пользоваться этим? Сначала добавляю элемент на форму, а потом вставляю его?

НовыйЭлемент = Элементы.Добавить("Булево", Тип("ПолеФормы"), ЭтаФорма.Элементы.Группа1);
НовыйЭлемент.Вид = ВидПоляФормы.ПолеФлажка;
НовыйЭлемент.ПутьКДанным = "Объект.Булево";
Элементы.Вставить("Булево", Тип("ПолеФормы"), ЭтаФорма.Элементы.Группа1, ЭтаФорма.Элементы.Реквизит2);

Но так ругается, видимо не нравится, что неуникальное имя в параметрах Вставить.
Если вместо добавления использую Вставить, то ничего не происходит вообще.
4 N-S-B
 
21.07.17
12:38
(3) Все, разобрался) Просто просто добавить, используем точно так же Вставить

    НовыйЭлемент = Элементы.Вставить("Булево", Тип("ПолеФормы"), ЭтаФорма.Элементы.Группа1, ЭтаФорма.Элементы.Реквизит2);
    НовыйЭлемент.Вид = ВидПоляФормы.ПолеФлажка;
    НовыйЭлемент.ПутьКДанным = "Объект.Булево";
5 Radkt
 
21.07.17
12:39
Есть еще сдвинуть()
Компьютер — устройство, разработанное для ускорения и автоматизации человеческих ошибок.