Студия/Электронная таблица SFT

From SunFlurry wiki
Jump to: navigation, search

Электронные таблицы SFT позволяют использовать на форме таблицу, строки которой не имеют одинаковой высоты, группы ячеек могут объединяться, таблицу, которую легко выводить на печать, которая может содержать объекты типа картинок и пр. Такие таблицы имеют много отличий от обычных таблиц, для описания редактора таблиц см. Редактор электронных таблиц. Электронные таблица не могут быть напрямую связаны с базами данных, они всегда содержат ограниченное и известное заранее количество строк (и столбцов). При двойном клике по электронной таблице, добавленной на форму, в редакторе форм, будет открыт подчиненный редактор электронных таблиц, все изменения, сделанные в таблице в этом редакторе, будут записаны внутрь таблицы, показанной на форме. Электронные таблицы имеют следующие визуальные свойства:

  • Закладка Визуальные:
    • Anchor (якоря) -- задает якоря визуального элемента.
    • Top, Left (координата верхнего левого угла) -- задает координату (в точках) верхнего левого угла элемента относительно начала формы.
    • Width, Height (высота и ширина) -- задает высоту и ширину (в точках) элемента.
    • MaxWidth, MaxHeight (максимальная высота и ширина) -- задает максимальную высоту и ширину (в точках) элемента. Иногда бывает необходимо ограничить увеличение размера элемента вместе с размерами формы, так как излишнее увеличение может ухудшить читаемость и осложнить работу с элементом. К примеру, слишком длинное поле редактирования неудобно для чтения и т.п. Максимальные размеры позволяют ограничить увеличение элементов до приемлемых величин.
    • Layer (слой формы) -- задает слой формы, которому принадлежит текущий элемент. Для описания редактора слоев, см. следующую статью.
    • Font (шрифт элемента) -- задает шрифт, размер и цвет текста ячеек таблицы по умолчанию. Для описания редактора шрифтов, см. следующую статью.
    • Color (цвет фона элемента) -- задает цвет фона ячеек таблицы по умолчанию. Для описания редактора цветов, см. следующую статью.
    • IsNoGridLines (запрет отображения линий сетки) -- устанавливает режим, при котором линии сетки таблицы не отображаются.
    • IsDisabled (недоступность элемента) -- устанавливает режим недоступности таблицы.
    • EditorMode (режим редактирования) -- устанавливает режим редактирования таблицы. Доступны следующие режимы:
      • Запретить редактирование -- таблица будет недоступна для любого редактирования, однако, положение курсора и выделение по-прежнему могут быть изменены, в отличии от режима IsDisabled
      • Редактируются только незащищенные ячейки -- режим по умолчанию, когда редактирование возможно для ячеек и объектов, для которых не установлен флажок "защищенная ячейка/объект".
      • Разрешить редактирование -- разрешен полный режим редактирования таблицы.
    • IsNoCaptions (показ заголовков) -- используется для отключения показа заголовков таблицы.
    • IsNoLevels (показ уровней) -- в этом режиме уровни в таблице, даже если они заданы, не будут показаны.
    • IsShowGroups (показ секций) -- включает или отключает режим показа секций.
    • IsNoScrolling (запрет перемещения поля таблицы) -- режим фиксирует указанную ширину и высоту таблицы.
    • IsInvisible (невидимость элемента) -- элемент (и его связанных элементы) становится невидимым в рабочем режиме. В режиме редактирования в Студии, элемент по-прежнему отображен.
    • IfResizeWithParentX, IfResizeWithParentY (привязка размеров к группе элементов) -- Особые установки, работающие совместно с MaxWidth и MaxHeight, если последние заданы для группы элементов, на которой находится текущий элемент, его размеры будут привязаны не к самой форме, а к элементу группы. Без такого условия, невозможно было бы использовать MaxWidth и MaxHeight для форм со сложным расположением элементов.
    • Scale (масштаб таблицы) -- параметр задает масштаб отображения таблицы по умолчанию. Обычно используется 100%.
    • Hint (всплывающая подсказка) -- определяет текст всплывающей подсказки при наведении курсора мыши на таблицу. Если свойство не задано (пустая строка), подсказка не будет выводиться.
    • AttachedButtons (связанные элементы) -- задает связанные элементы (доп. кнопки) выведенные в заголок списка (либо в другое место списка, в зависимости от установок). Для описания редактора связанных элементов см. следующую статью.
  • Закладка Данные:
    • Name (наименование) -- задает наименование элемента, с помощью которого к нему можно будет обращаться из программных модулей. Если свойства элемента не будут изменяться программно, наименование можно оставить пустым.
    • IfNotInSettings (не сохраняется в установках формы) -- задает режим, когда при сохранении установок (состояния) формы, состояние данного элемента не будет записано совместно с состоянием других элементов. При чтении установок, этот элемент будет всегда иметь значение по умолчанию. Такой флаг удобно устанавливать, к примеру, для таблиц, содержащих расчетную информацию.
    • HotKey (комбинация клавиш для активации элемента) -- задает комбинация клавиш для мгновенной активации элемента. Для описания редактора горячих клавиш см. следующую статью.
  • Закладка События предоставляет доступ к следующим событиям (см. Визуальные события):
    • OnBeforeEdit -- событие, возникающее до начала редактирования ячейки или объекта таблицы.
    • OnAfterEdit -- событие, возникающее после окончания редактирования ячейки или объекта таблицы.
    • OnEnter -- событие, возникающее при активации таблицы (получения курсора).
    • OnExit -- событие, возникающее при деактивации таблицы (потери курсора).
    • OnDataChange -- событие, возникающее при изменении любых данных в таблице.
    • OnSelectionChange -- событие, возникающее при изменении выделенной области таблицы.
    • OnDoubleClick -- событие, возникающее при двойном клике по ячейке или объекту таблицы.
    • OnRightClick -- событие, возникающее при правом клике по ячейке или объекту таблицы.
    • OnAttachedButtons -- событие, возникающее при нажатии на связанный элемент (кнопку).
    • OnBeforeSelect -- событие, возникающее в момент выбора элемента справочника или документа в редактируемую ячейку таблицы.
    • OnBeforeEditObject -- событие, возникающее до открытия формы редактирования (или просмотра) объекта, содержащегося в ячейке таблицы при ее редактировании.


Дополнительная информация:

  • Для работы со свойствами объектов формы из программы, см. статью Форма.
  • Для работы с объектом электронной таблицы из программы, см. статью Электронная таблица SFT.