Каталог решений - Избавляемся от горизонтальной полосы прокрутки в табличном поле

Избавляемся от горизонтальной полосы прокрутки в табличном поле

Избавляемся от горизонтальной полосы прокрутки в табличном поле

В наличии

Для табличных полей, количество и ширина колонок в которых могут сильно варьироваться, часто хочется быстро уместить все колонки в текущую ширину поля, чтобы не нужно было использовать горизонтальную полосу прокрутки. Выход прост — нужно пропорционально сжать ширину всех колонок.

Категория:

Описание

Штатными средствами пользователю довольно тяжело избавиться от горизонтальной полосы прокрутки. Приведенная процедура позволит в большинстве случаев одним нажатием уместить все колонки в текущую ширину табличного поля.

Добавьте в командную панель для нужного табличного поля кнопку, которая будет вызывать данную процедуру. Пример можно посмотреть в консоли запросов в табличном поле результата //sale.itcity.ru/projects/1274/

// Пропорционально сжимает ширины колонок табличного поля.
//
// Параметры:
// ТабличноеПоле – ТабличноеПоле;
// Сжатие – Число, *2 – коэффициент сжатия;
// УважатьЗапретИзмененияРазмера – Булево, *Истина – не сжимать колонки с запретом изменения размера;
//
Процедура ЛксСжатьКолонкиТабличногоПоля(ТабличноеПоле, Сжатие = 2, УважатьЗапретИзмененияРазмера = Истина) Экспорт

 МассивКолонокДляОбработки = Новый Массив;
 Для Каждого Колонка Из ТабличноеПоле.Колонки Цикл
  Ширина = Колонка.Ширина;
  Если Ширина = 0 Тогда
  // Антибаг платформы.
  Ширина = 10;
  КонецЕсли;
  Если Ложь
  Или Не УважатьЗапретИзмененияРазмера
  Или Колонка.ИзменениеРазмера = ИзменениеРазмераКолонки.Изменять
  Тогда
  НоваяШирина = Ширина / Сжатие;
  НоваяШирина = Макс(НоваяШирина, 1);
  Колонка.Ширина = НоваяШирина;
  КонецЕсли;
 КонецЦикла;

КонецПроцедуры // ЛксСжатьКолонкиТабличногоПоля()

has been added to your cart:
Оформление заказа