unit gr_obj;
interface
type graph_obj_parent = object private x, y : integer; color : word; public constructor init ( x_in, y_in : integer; color_in : word); procedure draw ( color_in : word); virtual; procedure show; procedure hide; procedure move_to ( x_in, y_in : integer); virtual; end;
button = object ( graph_obj_parent) private dx, dy : integer; constructor init ( x1_in, y1_in, x2_in, y2_in : integer; color_in : word); procedure draw ( color_in : word); virtual; end; ... implementation ... constructor graph_obj_parent.init ( x_in, y_in : integer; color_in : word); begin x := x_in; y := y_in; color := color_in; end; ... constructor button.init ( x1_in, y1_in, x2_in, y2_in : integer; color_in : word); begin inherited init ( x1_in, y1_in, color_in); dx := x2_in - x1_in; dy := y2_in - y1_in; end; ...
В основной программе подключаю этот модуль и вызываю init
var str : string; tmp : button;
BEGIN clrscr; str := 'asdf'; init_graph; writeln ( str); tmp.init( 500, 200, 550, 220, 20); ... Выдает ошибку что слишком много параметров у init, ну дак я ведь переопределил эту функцию, кто знаком с BP 7.0. подскажите.
Stalcker