Студия/Список значений

From SunFlurry wiki
Jump to: navigation, search

Списки значений используются для хранения и вывода данных, когда нет необходимости использовать несколько столбцов. В отличие от более универсального визуального элемента таблицы, списки требуют меньший объект памяти и позволяют немного удобнее обращаться к своим элементам. Кроме того, наличие представления наряду со значениями, позволяет фактически иметь скрытый второй столбик. Списки также имеют возможность выводить флажки для каждой из строк и использовать иконки. Однако, списки обычно не редактируются с помощью встроенного редактора, который используется для таблиц. Списки имеют следующие визуальные свойства:

  • Закладка Визуальные:
    • Anchor (якоря) -- задает якоря визуального элемента.
    • Top, Left (координата верхнего левого угла) -- задает координату (в точках) верхнего левого угла элемента относительно начала формы.
    • Width, Height (высота и ширина) -- задает высоту и ширину (в точках) элемента.
    • MaxWidth, MaxHeight (максимальная высота и ширина) -- задает максимальную высоту и ширину (в точках) элемента. Иногда бывает необходимо ограничить увеличение размера элемента вместе с размерами формы, так как излишнее увеличение может ухудшить читаемость и осложнить работу с элементом. К примеру, слишком длинное поле редактирования неудобно для чтения и т.п. Максимальные размеры позволяют ограничить увеличение элементов до приемлемых величин.
    • Layer (слой формы) -- задает слой формы, которому принадлежит текущий элемент. Для описания редактора слоев, см. следующую статью.
    • HAlign (горизонтальное выравнивание) -- задает горизонтальное выравнивание отображения элементов списка. Текст может выравниваться по левому краю, по правому краю или по середине.
    • Font (шрифт элемента) -- задает шрифт, размер и цвет текста элемента. Для описания редактора шрифтов, см. следующую статью.
    • FontColor (цвет текста элемента) -- задает цвет текста элемента. Для описания редактора цветов, см. следующую статью.
    • Color (цвет фона элемента) -- задает цвет фона элемента. Для описания редактора цветов, см. следующую статью.
    • IsWithCheckboxes (отображение флажков) -- устанавливает режим отображения флажков совместно с элементами списка.
    • IsNoGridLines (запрет отображения линий сетки) -- устанавливает режим, при котором линии сетки списка не отображаются.
    • IsDisabled (недоступность элемента) -- устанавливает режим недоступности элемента. При установке режима на список, он становится недоступным (невозможно даже выделить содержимое и поместить его в буфер обмена).
    • IsEditable (разрешен режим редактирования) -- Разрешает режим, при котором элементы списка могут быть отредактированы непосредственно в самом списке. Редактирование инициируется с помощью клавиши Enter или двойным щелчком мыши.
    • IsInvisible (невидимость элемента) -- элемент (и его связанных элементы) становится невидимым в рабочем режиме. В режиме редактирования в Студии, элемент по-прежнему отображен.
    • IfResizeWithParentX, IfResizeWithParentY (привязка размеров к группе элементов) -- Особые установки, работающие совместно с MaxWidth и MaxHeight, если последние заданы для группы элементов, на которой находится текущий элемент, его размеры будут привязаны не к самой форме, а к элементу группы. Без такого условия, невозможно было бы использовать MaxWidth и MaxHeight для форм со сложным расположением элементов.
    • Hint (всплывающая подсказка) -- определяет текст всплывающей подсказки при наведении курсора мыши на элемент. Если свойство не задано (пустая строка), подсказка не будет выводиться.
    • AttachedButtons (связанные элементы) -- задает связанные элементы (доп. кнопки) выведенные в заголок списка (либо в другое место списка, в зависимости от установок). Для описания редактора связанных элементов см. следующую статью.
    • EditorAttachedButtons (связанные элементы) -- задает связанные элементы (доп. кнопки), используемые совместно при редактировании значений непосредственно в списке. Для описания редактора связанных элементов см. следующую статью.
  • Закладка Данные:
    • Name (наименование) -- задает наименование элемента, с помощью которого к нему можно будет обращаться из программных модулей. Если свойства элемента не будут изменяться программно, наименование можно оставить пустым.
    • Length (длина поля в символах) -- задает максимальное количество символов, которое может быть введено в текстовое поле редактирования при редактировании значений непосредственно в списке.
    • Mask (маска редактирования поля) -- задает маску редактирования поля. Маска может задаваться Студией автоматически, при изменении типа поля, см. также Редактор типов данных и маска редактирования.
    • Folders (режим отображения папок) -- задает режим отображения папок при выводе справочников, содержащих папки, в список. Доступны следующие режимы отображения:
      • Отображать в общей структуре -- Папки будут отображаться в общем списке с обычным элементами.
      • Отображать вверху списка -- Папки будут отображаться до обычных элементов.
      • Не отображать -- Папки не будут выведены в список.
      • Отображать только папки -- В список будут выведны только папки.
    • DBSource (привязка к данных базы данных) -- задает привязку данного списка к сточным частям текущего объекта или свободным объектам базы данных. В зависимости от типа некоторые свойства списка могут быть автоматически изменены. См. Редактор типов данных.
    • Filters (начальные фильтры объекта) -- задает начальные фильтры списка, если он связан с базой данных. Для описания редактора фильтров см. следующую статью.
    • Items (элементы списка) -- редактор задает начальное заполнение списка. Для списка можно выбрать значения (текстовые), представления, а также значение по умолчанию, которое будет автоматически выбрано для списков, не привязанных к базе данных, при запуске формы.
    • IfSetChangeFlag (установка флага модифицированности формы) -- задает режим, когда при изменении этого элемента, на форме автоматически устанавливается флаг модифицированности. Важно понимать, что если элемент привязан к реквизитам редактируемого объекта, его изменение автоматически установит этот флаг, вне зависимости от статуса использования этого режима, поэтому, режим имеет значение только для элементов, не привязанных к реквизитам редактируемого объекта.
    • IfNotInSettings (не сохраняется в установках формы) -- задает режим, когда при сохранении установок (состояния) формы, состояние данного элемента не будет записано совместно с состоянием других элементов. При чтении установок, этот элемент будет всегда иметь значение по умолчанию. Такой флаг удобно устанавливать, к примеру, для таблиц, содержащих расчетную информацию.
    • HotKey (комбинация клавиш для активации элемента) -- задает комбинация клавиш для мгновенной активации элемента. Для описания редактора горячих клавиш см. следующую статью.
  • Закладка События предоставляет доступ к следующим событиям (см. Визуальные события):
    • OnBeforeEditLine -- событие, возникающее до начала редактирования строки списка.
    • OnAfterEditLine -- событие, возникающее в момент окончания редактирования строки списка.
    • OnEnter -- событие, возникающее при активации списка (получения курсора).
    • OnExit -- событие, возникающее при деактивации списка (потери курсора).
    • OnChecking -- событие, возникающее в момент (до изменения) установки или снятия флажка в строке списка.
    • OnChangeOrClick -- событие, возникающее при визуальном изменении (перемещении курсора) списка.
    • OnDoubleClick -- событие, возникающее при двойном клике по списку мышью.
    • OnRightClick -- событие, возникающее при правом клике по списку мышью.
    • OnKeyPress -- событие, возникающее при нажатии на клавишу, когда список активен.
    • OnGetVisualProperties -- событие, возникающее для получения визуальный параметров при выводе элементов списка на экран.
    • OnAttachedButtons -- событие, возникающее при нажатии на связанный элемент (кнопку).
    • OnBeforeSelect -- событие, возникающее в момент выбора элемента справочника или документа в редактируемую строку списка.
    • OnBeforeEditObject -- событие, возникающее до открытия формы редактирования (или просмотра) объекта, содержащегося в строке списка при его редактировании.


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

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