
06.10.2013, 21:52
|
Прохожий
|
|
Регистрация: 01.10.2013
Сообщения: 32
Версия Delphi: Delphi 7
Репутация: 10
|
|
На данный момент у меня имеется рисование линий и очистка формы клавишей Z. Осталось их только заставить перемещать вверх, вниз, влево, вправо указанными клавишами.
Привожу код:
Код:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs;
type
TForm1 = class(TForm)
procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
procedure FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
var xg,yg,a,b:integer;
{$R *.dfm}
procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
Form1.Canvas.Brush.Style:=bsSolid;
Form1.Canvas.Brush.Color:=clBtnFace;
Form1.Canvas.FillRect(Rect(0,0,Form1.ClientWidth,Form1.ClientHeight));
Form1.Canvas.Pen.Color:=clRed;
Form1.Canvas.Brush.Style:=bsHorizontal;
Form1.Canvas.Brush.Color:=clred;
Form1.Canvas.MoveTo(500,y);
Form1.Canvas.LineTo(100,y);
end;
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word;
Shift: TShiftState);
var X, Y: Integer;
begin
if Key=ord('Z') then begin
Form1.Canvas.Pen.Color:=Form1.Color;
Form1.Canvas.Brush.Style:=bsSolid;
Form1.Canvas.Brush.Color:=Form1.Color;
Form1.Canvas.FillRect(Rect(0,0,Form1.Width,Form1.Height));
end;
end.
|