Содержание
- 2. Свойство - это средство Pascal Delphi, позволяющее определять интерфейс доступа к полям и методам класса. В
- 3. Используются для ограничения доступа к полю и при необходимости выполнения дополнительных действий при чтении и записи.
- 4. Пример: private FValue:integer; procedure SetValue(AValue:integer); function StoreValue:boolean; published property Value:integer read FValue write SetValue stored StoreValue
- 5. Примитивный графический редактор (Ex 9.1)
- 6. Объектная декомпозиция Активизировать
- 7. Диаграмма классов предметной области
- 8. Unit Figure; Interface Uses extctrls,Graphics; Type TMyFigure=class private x,y,FRadius:Word; FColor:TColor; Image:TImage; procedure Clear; procedure SetSize(ar:word); procedure
- 9. TMyCircle=class(TMyFigure) public Procedure Draw; override; end; TMySquare=class(TMyFigure) public Procedure Draw; override; end; Implementation Constructor TMyFigure.Create; Begin
- 10. Procedure TMyFigure.Clear; Var TempColor:TColor; Begin TempColor:=FColor; FColor:=Image.Canvas.Brush.Color; Draw; FColor:=TempColor; End; Procedure TMyFigure.SetSize; Begin Clear; FRadius:=ar; Draw;
- 11. Procedure TMyCircle.Draw; Begin Image.Canvas.Pen.Color:=FColor; Image.Canvas.Ellipse(x-FRadius,y-FRadius, x+FRadius,y+FRadius); End; Procedure TMySquare.Draw; Begin Image.Canvas.Pen.Color:=FColor; Image.Canvas.Rectangle(x-FRadius, y-FRadius, x+FRadius,y+FRadius); End; End.
- 12. unit Main; interface uses Windows,Messages,SysUtils,Variants,Classes,Graphics, Controls,Forms,Dialogs,ComCtrls, StdCtrls, ExtCtrls; type TMainForm = class(TForm) Image: TImage; ColorButton: TButton;
- 13. procedure FormActivate(Sender: TObject); procedure ImageMouseDown(Sender: TObject;… ); procedure UpDownClick(Sender: TObject; …); procedure ColorButtonClick(Sender: TObject); procedure ExitButtonClick(Sender:
- 14. procedure TMainForm.ImageMouseDown(Sender: TObject; Button:TMouseButton;Shift:TShiftState;X,Y:Integer); begin if Button=mbLeft then case RadioGroup.ItemIndex of 0: begin C.Free; C:=TMyCircle.Create(Image,X,Y, strtoint(rEdit.Text),Image.Canvas.Pen.Color);
- 15. procedure TMainForm.UpDownClick(Sender:TObject; Button:TUDBtnType); begin if C nil then C.Radius:=strtoint(rEdit.Text); end; procedure TMainForm.ColorButtonClick(Sender: TObject); begin if ColorDialog.Execute
- 17. Скачать презентацию