Рубрика «таблицы» - 3

Задача

Задача звучит просто – напечатать таблицу. Напечатать так, чтобы она выглядела красиво и, по возможности, не расползалась.

После некоторых раздумий, решено было воспользоваться FOP для генерации PDF. Загвоздка в том, что Apache FOP не поддерживает table-layout:auto, то есть при построении таблицы необходимо вручную задать ширину столбцов (хорошо еще, что можно задать относительную ширину в процентах). Если же сделать все столбцы одинаковой ширины, таблица будет выглядеть несколько неэлегантно. Выходит, рассчитывать ширину придется вручную.

Основная идея в том, что ширину столбцов необходимо подобрать таким образом, чтобы как можно сильнее сократить число переносов строк внутри ячеек таблицы.

Читать полностью »

При установке редактора TinyMCE (на момент написания статьи версия: 4.3.3 pl) по умолчанию он настраивается таким образом, что в нем нет возможности добавлять в редактируемую область разметку таблиц. Видимо это сделано для компактности и «дружелюбности», чтобы не пугать пользователей своими многочисленными возможностями (другого объяснения я найти не смог).

И так, вот что необходимо сделать, чтобы в редакторе TinyMCE в MODx Revo появились элементы редактирования таблиц:

  1. Перейдите к настройкам системы ("Система" -> "Настройка системы");
  2. Отфильтруйте параметры по компоненту "tinymce";
  3. Найдите параметр "tiny.custom_buttons3" (цифра в конце означает строчку вывода кнопок на панели TiniMCE, на свое усмотрение можно выбрать другой аналогичный параметр "tiny.custom_buttonsN"). Добавьте в значение параметра слово "tablecontrols";
  4. Для того чтобы кнопки заработали, необходимо подключить плагин для работы с таблицами. Для этого в параметре "tiny.custom_plugins" нужно добавить к списку плагинов — "table".

Читать полностью »

Из-за небольшого количества стандартных элементов управления в Visual C++ большинство компонентов приходится дописывать самостоятельно, особенно если вопрос касается отображения табличных данных. Для боле менее серьезных систем стандартного ListCtrl уже не хватает. Покопавшись в интернете можно найти немалое количество коммерческих grid’ов, но со своими кровными не очень хочется расставаться, тут на помощь и приходит замечательный компонент от Yuriy Zabroda VirtualGridCtrl.

Данный компонент был написан еще в Visual C++ 6.0, но и по сегодняшний день его можно успешно использовать в более свежих версиях Visual C++. На самом деле при выборе для себя грида я выдвигал несколько требований:

— многострочная шапка грида (без этого сложно представить хоть сколько-нибудь сложный отчет)
— отображение многострочного текста
— возможность подменить в строках таблицы стандартный CEdit на свои элементы управления
— возможность выделять цветом отдельные записи
— скорость работы

Пожалуй, начнем с последнего пункта. Слово Virtual в названии означает, что данные хранятся не в самом гриде, а в какой-то структуре данных, например векторе. А при отображении данных на экране из этой структуры запрашиваются только те данные, которые необходимо отобразить на экране, этим и обеспечивается независимость скорости работы от количества элементов в списке.

С остальными возможностями разберемся, используя небольшой пример.Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js