Delphi Sources

Редактор свойств для точки



Автор: Mike Scott

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

 
  GetValue/SetValue            для строк (strings)
  GetFloatValue/SetFloatValue  для натуральных чисел (floats)
  GetOrdValue/SetOrdValue      для порядковых (и указателей)

Решением может быть создание класса TPersistentPoint, являющегося наследником TPersistent и имеющего те же свойства, что и TPoint. Вы можете просто "обернуть" TPoint для хранения значений, или создать явные поля. Непосредственное использование TPoint сделает использование метода Assign легким и быстрым для кодирования. Для процедур чтения и записи вы можете использовать поля записи, как показано ниже:


type
  TPersistentPoint = class( TPersistent )
    private
      FPoint: TPoint ;
    published
      property X : integer read FPoint.X write FPoint.X ;
      property Y : integer read FPoint.Y write FPoint.Y ;
  end ;





Похожие по теме исходники

Редактор XPad

Нейросеть для распознавания образов

Механизм станка качалки для нефти

Весы для взвешивания

 

Кувшины для воды

Доска для игры Реверси

Игра в точки

ISOLA (точки)

 



Copyright © 2004-2025 "Delphi Sources" by BrokenByte Software. Delphi World FAQ

Группа ВКонтакте