скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Компонент TMultiProperty



Автор: Рустам Кафаров

Kомпонент TMultiProperty предназначен для создания мультиязычных и мультиинтерфейсных приложений. Особенность его состоит в том, что конечный пользователь создаваемого продукта сможет сам изменять внешний вид программы без изменения EXE-файла. С компонентом поставляется специальный редактор MultiEditor.

Kомпонент вляется Shareware и поставляется только в спомпилированном виде. Активные тестеры будут поощраться скидками на продукт. Более подробная информация там же.

Описание

Компонент TMultiProperty предназначен для создания многоязыковых и мультиинтерфейсных приложений. Он позволяет изменить свойства компонентов после компиляции проекта. Принцип его работы основан на записи перечня всех компонентов со всеми их свойствами в файл-слепок проекта и значений этих свойств в файл значений. Эту процедуру можно осуществить прямо в дизайн-тайме, а при необходимости и в ран-тайме. Файл значений представляет собой не что иное, как двоичный DFM файл, полученный при помощи последовательного вызова методов WriteComponent() объекта TWriter. Поэтому он может легко конвертироваться в текстовый формат и обратно. Для редактирования этого файла вместе с компонентом поставляется специальный редактор MultiEditor. С его помощью можно будет создавать новые файлы значений. Чтоб это можно было сделать в отсутствии самого приложения, используется файл-слепок. С его помощью пользователь сам легко сможет изменить текст в метке, или поменять положение кнопки, изменить шрифт и цвет колонки ДБ-грида и т.д. Для работы уже самого приложения нужен лишь файл значений, а файл-слепок необходим только для его создания. Таким образом, сам конечный пользователь, даже далекий от программирования, сможет изменять внешний вид приложения БЕЗ изменения EXE-файла. Преимуществами этого продукта перед его аналогами являются:
  • Инструмент действует на уровне самого приложения, т.е. является его частью. Он не требует перекомпиляции или перезагрузки приложения. При этом он может управляться параметрами командной строки (временно отключаться/включаться, пересоздавать файлы, загружать файлы свойств).
  • Компонент не сканирует исходные коды на наличие строковых констант. Таким образом, изменять можно все свойства (кроме бинарных) любых компонентов, в том числе и нестандартных, не визуальных, со сложными вложенными объектными свойствами. При этом есть возможность фильтровать компоненты по именам и классам на момент создания файла-слепка.
  • Создание файлов значений, т.е. непосредственный перевод, может осуществляться непосредственно самим пользователем. При этом программистом могут накладывать ограничения на возможности пользователя редактировать те или иные значения свойств. Свойства или целые компоненты можно сделать невидимыми для пользователя или только для чтения.
  • Формат файлов значений является стандартным форматом DFM-файлов, и может использоваться и другими программами. К тому же размер их достаточно мал. Следует учесть, что хоть размер файла-слепка сравнительно большой (достигает десятков мегабайт для достаточно большого приложения).
  • Загрузка файла значений может происходить при инициализации приложения (свойство ValueFile читается из DFM, реестра, командной строки), либо в любой момент выполнения программы.





Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook