Здравствуйте! Есть тема "Иерархия структуры таблицы Менделеева", в пределах которой нужно построить иерархию объектов, состоящей как минимум из 3-х уровней. Для демонстрации работы построенной иерархии классов, создаётся приложение, позволяющее: создавать, удалять объекты, изменять характеристики объектов, визуализировать объекты, манипулировать на форме объектами, сохранять/считывать текущее состояние объектов в формате XML.
Есть некоторые задумки насчёт иерархии (изображение)...Может кто-нибудь подскажет другой подход? Ну а прежде всего - трудности с визуализацией и манипулированием объектами...Может быть у кого-нибудь есть идеи, как для начала идейно подойти к этим вопросам? что можно придумать? Подскажите пожалуйста..!
interface type TBPeriod=class private fBTitle:string; function GetBTitle:string; procedure SetBTitle(newBTitle:string);
public property BTitle:string read GetBTitle write SetBTitle; constructor Create(fBTitle:string); end;
implementation Uses UnitMain;
constructor TBPeriod.Create(fBTitle:string); begin inherited Create; BTitle:=fBTitle; end;
function TBPeriod.GetBTitle:string; begin Result:=fBTitle; end;
procedure TBPeriod.SetBTitle(newBTitle:string); begin fBTitle:=newBTitle; end;
end.
На форме имеется кнопка, по которой предполагается создать объект класса TBPeriod (при установке переключателя в положение "Большой"), название его считывается из Edit, и я хочу добавить создаваемый объект в TreeViewNew, с чем и возникла проблема..
procedure TFormMain.BitBtnCreateBPerClick(Sender: TObject); var NewBPeriod:TBPeriod; title:string; begin case RadioGroupPeriod.ItemIndex of 0: begin title:=EditTitlePer.Text; NewBPeriod:=TBPeriod.Create(title); //Вот здесь меня не пропускает с несоответствием типов... Подскажите пожалуйста, как тут быть? FormMain.TreeViewNew.Items.AddObject(title, NewBPeriod as TObject); end; 1: ; else MessageDlg('Выберите пункт создания',mtError,[mbOK],0); end; end;