Форум: "Начинающим";
Текущий архив: 2010.08.27;
Скачать: [xml.tar.bz2];
ВнизНаследование. Запутался. Найти похожие ветки
← →
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;
Скачать: [xml.tar.bz2];
Память: 0.44 MB
Время: 0.165 c