Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2010.08.27;
Скачать: CL | DM;

Вниз

Наследование. Запутался.   Найти похожие ветки 

 
mfender   (2010-04-30 09:56) [0]

Здравствуйте, товарищи.
Где-то у меня что-то не соображает.
Вводная: есть замечательная штука в Indy - TIdUri. Всё хорошо, но она не разбирает по полкам QueryString. А мне приспичило сделать это.

Делаю следующим образом (в листинге, понятное дело оставляю только соль, выкинув всё ненужное):

 TIdURI = class
 protected
   FURI: String;
   FParams: string;

   procedure SetURI(const Value: String);
   function GetURI: String;
 public
   constructor Create(const AURI: string = ""); virtual;    {Do not Localize}

   property Params: string read FParams write FParams;
   property URI: string read GetURI write SetURI;
 end;

 TIdUriEx = class(TIdUri)
 private
   FParams: string;
   function GetParams: string;
 protected
   procedure SetURI(const Value: string);
 public
   constructor Create(const AURI: string = ""); override;
   destructor Destroy;

   procedure ParseParams; //Тут как раз происходит разбор строки

   property Params: string read GetParams write FParams;
   property URI: string read GetURI write SetURI;
 end;

implementation

procedure TIdUriEx.SetURI(const Value: string);
begin
 inherited SetURI(Value);
 ParseParams;
end;


Вот тут-то происходит затык. Приделать override к SetURI нельзя - статичный метод. И вот как бы сделать, чтобы после всех действий в SetURI базового класа, произвести разбор строки в моём наследнике?


 
mfender   (2010-04-30 10:03) [1]

Всё, всё оказалось правильно. просто я свой ParseParams зацикливал на самого себя, а Indy это Indy и он просто от назойливого меня избавлялся. ))))))



Страницы: 1 вся ветка

Текущий архив: 2010.08.27;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.091 c
11-1214992169
Sarymian
2008-07-02 13:49
2010.08.27
Проблема с заменой системных модулей в версии 2.87


15-1269409783
TUser
2010-03-24 08:49
2010.08.27
Школа vs гугл :)


15-1275310047
Joe
2010-05-31 16:47
2010.08.27
Служба Oracle


2-1273938390
Zoom
2010-05-15 19:46
2010.08.27
Можно ли управлять классом через TComponent ?


2-1272383481
Lyonux
2010-04-27 19:51
2010.08.27
Шифрация текста по таблице Виженера.