Программно создать страницу, табличное поле, командную панель, колонки табличного поля (обычное приложение)

Готовые тексты модулей и решений
Ответить
Аватара пользователя
admin
Администратор
Сообщения: 71
Зарегистрирован: 06 июл 2017 09:26

Программно создать страницу, табличное поле, командную панель, колонки табличного поля (обычное приложение)

Сообщение admin » 13 июл 2019 19:40

Код: Выделить всё

Процедура ааб_ДобавитьЭлементыУправления()
	//страница
	ЭлементыФормы.ОсновнаяПанель.Страницы.Добавить("Фасады", "Фасады");
	ЭлементыФормы.ОсновнаяПанель.ТекущаяСтраница=ЭлементыФормы.ОсновнаяПанель.Страницы.Фасады;
	//табличное поле
	ТабличноеПолеФасады=ЭлементыФормы.Добавить(Тип("ТабличноеПоле"),"Фасады",Истина,ЭлементыФормы.ОсновнаяПанель);
	ТабличноеПолеФасады.Данные="ДокументОбъект.ааб_Фасады";
	ТабличноеПолеФасады.Ширина = ЭлементыФормы.ОсновнаяПанель.Ширина - 15;
	ТабличноеПолеФасады.Высота = ЭлементыФормы.ОсновнаяПанель.Высота - 50;
	ТабличноеПолеФасады.Верх=25;
	ТабличноеПолеФасады.ТолькоПросмотр = Ложь;
	ТабличноеПолеФасады.ИзменятьПорядокСтрок = Истина;
	ТабличноеПолеФасады.ИзменятьСоставСтрок = Истина;
	ТабличноеПолеФасады.УстановитьПривязку(ГраницаЭлементаУправления.Верх,
	ЭлементыФормы.ОсновнаяПанель,
	ГраницаЭлементаУправления.Верх);
	ТабличноеПолеФасады.УстановитьПривязку(ГраницаЭлементаУправления.Низ,
	ЭлементыФормы.ОсновнаяПанель,
	ГраницаЭлементаУправления.Низ);
	ТабличноеПолеФасады.УстановитьПривязку(ГраницаЭлементаУправления.Право,
	ЭлементыФормы.ОсновнаяПанель,
	ГраницаЭлементаУправления.Право);
	//командная панель
	КоманднаяПанельФасады = ЭлементыФормы.Добавить(Тип("КоманднаяПанель"), "КоманднаяПанельФасады", , ЭлементыФормы.ОсновнаяПанель);
	КоманднаяПанельФасады.ИсточникДействий    = ЭлементыФормы.Фасады;
	КоманднаяПанельФасады.Автозаполнение        = Истина;
	КоманднаяПанельФасады.Видимость=истина;
	КоманднаяПанельФасады.Ширина = ЭлементыФормы.ОсновнаяПанель.Ширина - 15;
	КоманднаяПанельФасады.Высота = 25;
	//КоманднаяПанельФасады.УстановитьПривязку(ГраницаЭлементаУправления.Верх,
	//ЭлементыФормы.ОсновнаяПанель,
	//ГраницаЭлементаУправления.Верх);
	//КоманднаяПанельФасады.УстановитьПривязку(ГраницаЭлементаУправления.Низ,
	//ЭлементыФормы.ОсновнаяПанель,
	//ГраницаЭлементаУправления.Низ);
	//КоманднаяПанельФасады.УстановитьПривязку(ГраницаЭлементаУправления.Право,
	//ЭлементыФормы.ОсновнаяПанель,
	//ГраницаЭлементаУправления.Право);
	//колонка
	НоваяКолонка = ТабличноеПолеФасады.Колонки.Добавить("Фасад", "Фасад");
	НоваяКолонка.УстановитьЭлементУправления(Тип("ПолеВвода"));
	НоваяКолонка.Данные = "Фасад";
	НоваяКолонка.ЭлементУправления.КнопкаВыбора = Истина;
	НоваяКолонка.ЭлементУправления.ВыбиратьТип = Ложь;
	
	НоваяКолонка = ТабличноеПолеФасады.Колонки.Добавить("Количество", "Количество");
	НоваяКолонка.УстановитьЭлементУправления(Тип("ПолеВвода"));
	НоваяКолонка.Данные = "Количество";
	НоваяКолонка.ЭлементУправления.КнопкаВыбора = Истина;
	НоваяКолонка.ЭлементУправления.ВыбиратьТип = Ложь;
	
	//своя команда на панель
	ЭлементыФормы.КоманднаяПанельФасады.Кнопки.Добавить("ЗаполнитьЗаказ",ТипКнопкиКоманднойПанели.Действие, "Заполнить заказ", Новый Действие("ааб_ЗаполнитьЗаказ"));
	ЭлементыФормы.КоманднаяПанельФасады.Кнопки.ЗаполнитьЗаказ.Подсказка="Заполнить заказ";
	ЭлементыФормы.КоманднаяПанельФасады.Кнопки.ЗаполнитьЗаказ.Пояснение="Заполнить заказ";
КонецПроцедуры



Процедура ааб_ЗаполнитьЗаказ()

	Сообщить("Тест");
КонецПроцедуры

	

Аватара пользователя
admin
Администратор
Сообщения: 71
Зарегистрирован: 06 июл 2017 09:26

Re: Программно создать страницу, табличное поле, командную панель, колонки табличного поля (обычное приложение)

Сообщение admin » 14 июл 2019 08:13

навесим процедуру при изменении на созданную колонку

Код: Выделить всё

НоваяКолонка.ЭлементУправления.УстановитьДействие("ПриИзменении",Новый Действие("ааб_ПриИзмененииКоличества"));

далее:

Код: Выделить всё

Процедура ааб_ПриИзмененииКоличества(Элемент)
	  Сообщить("При изменении количества");
КонецПроцедуры	

Ответить

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 0 гостей