Нарисовать в квадрате X*X пикселей изображение, чтобы с каждой стороны квадрата осталось 5% неиспользованного места
Категория: Delphi/Pascal
2012-11-01 16:30:43
Дать возможность пользователю ввести целое число X от 100 до 400 и выбрать цвет из палитры Windows. Нарисовать в квадрате X*X пикселей изображение, чтобы с каждой стороны квадрата осталось 5% неиспользованного места, тем цветом, который выбрал пользователь на белом фоне.
code: #delphi
type TForm1 = class(TForm) Image1: TImage; Edit1: TEdit; Button1: TButton; Button2: TButton; ColorDialog1: TColorDialog; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; Col : TColor; implementation {$R *.dfm} procedure TForm1.Button2Click(Sender: TObject); var X,A : integer; begin Image1.Picture.Loadfromfile('d:\zylex[1].bmp'); X := strtoint(edit1.Text); Image1.Height := X; Image1.Width := X; form1.Canvas.Brush.Color := Col; A := Trunc(X/100)*5; form1.Canvas.Rectangle(Image1.Left-A,Image1.Top-A,Image1.Left+X+A,Image1.Top+X+A); end; procedure TForm1.Button1Click(Sender: TObject); begin if ColorDialog1.Execute then Col := ColorDialog1.Color; end; procedure TForm1.FormCreate(Sender: TObject); begin Col := clBlack; end;
автор: Zylex
Поделиться: