![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
|
|
#1
|
|||
|
|||
|
есть модуль:
Код:
unit Balka;
interface
uses SysUtils, Dialogs, Classes, StdCtrls, Graphics;
type
Tbalka=class
private
fdlina:real;
fploshad:real;
fshema:tcanvas;
procedure setshema(value:tcanvas);
published
property dlina:real
read fdlina
write fdlina;
property ploshad:real
read fploshad
write fploshad;
property shema:tcanvas
read fshema
write setshema;
end;
implementation
procedure setshema(value:tcanvas);
var
x1, y1, x2, y2:real;
begin
x1:=100;
y1:=100;
x2:=x1+fdlina;
y2:=y1+20;
value.Rectangle(x1, y1, x2, y2);
end;
end.Что нужно: - описать процедуру графического отображения здесь в модуле - значения полей буду определять в другом unit, а описать процедуру графич построения нужно в этом модуле и она зависит от поля как реализовать данный момент? |
|
#2
|
|||
|
|||
|
x1, x2 ... определять в другом unit? тогда их в класс, а значение передавать через конструктор
а пока в этом модуле ничего стоящего нет Последний раз редактировалось Pyro, 25.10.2012 в 05:38. |
|
#3
|
||||
|
||||
|
Цитата:
Код:
.....
implementation
procedure Tbalka.setshema(value:tcanvas);
var
.....Цитата:
|
|
#4
|
|||
|
|||
|
подключаю этот модуль в другом юнит
но все равно ошибка вот другой модуль: Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
Button1: TButton;
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses Balka;
var
balka1:Tbalka;
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
begin
balka1:=Tbalka.create;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
balka1.free;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
balka1.dlina:=200;
end;
end.несколько ошибок ругается на fdlina и на rectangle где ошибки? может как-то каряво модуль написан? |
|
#5
|
||||
|
||||
|
Цитата:
В этом чтоли?: Код:
.....
x2:=x1+fdlina;
y2:=y1+20;
value.Rectangle(x1, y1, x2, y2);
..... |
|
#6
|
|||
|
|||
|
ошибки которые выдает компилятор
- Undeclared identifier: 'fdlina' - There is no overloaded version of 'Rectangle' that can be called with these arguments |
|
#7
|
||||
|
||||
|
Цитата:
2. Для функции Rectangle допустимы только целочисленные параметры. |