Конференция "Компоненты" » property ... index [D5, WinXP]
 
  • _/\/\_|/|_|^_ (31.01.07 21:33) [0]
    Уважаемые мастера, почему стандартный редактор TStringProperty отказывается редактировать propety c index( Access Violation).
    И как регистрация (RegisterPropertyEditor) выглядеть в Delphi7?

    TAlphaAbr = Class(TWinControl)
    ...
    private
    function GetField(index : integer) : string;
    procedure SetField(index: integer; Value : string);
    ...
    published
    property NameField: string index 1 read GetField write SetField
    property LastField: string index 2 read GetField write SetField
    end;
    ...
    implementation
    ...
    procedure Register;
    begin
     RegisterComponents('AlphaA', [TAlphaAbr]);
     RegisterPropertyEditor(TypeInfo(string), TAlphaAbr,
       'NameField', TStringProperty);
     RegisterPropertyEditor(TypeInfo(string), TAlphaAbr,
       'LastField', TStringProperty);
    ...
    end;

  • DimaBr (01.02.07 10:28) [1]
    Не вижу смысла в регистрации для стрингового поля дополнительного редактора. Это ваш собственный редактор ???
  • Юрий Зотов © (01.02.07 10:31) [2]
    1. Зачем подключать редактор, который и так подключается автоматически?

    2. Причину Access Violation, похоже, нужно искать в коде Get/SetField. Во всяком случае, стандартный редактор тут наверняка ни при чем.
 
Конференция "Компоненты" » property ... index [D5, WinXP]
Есть новые Нет новых   [119228   +48][b:0][p:0.001]