Delphi 7 Здравствуйте нужна полетел компьютер а мне нужно сделать листинг программы Задача такая:
Разработать проект, реализующий динамическое изображение графическими средствами канвы формы или компонента Image, и показать его преподавателю.
Солнце с 10 лучами вращается против часовой стрелки с дискретом 100/сек. Длина цикла 30 сек. Запуск движения – команда контекстного меню.
Вот сам код:
unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, Menus;
type
TForm1 = class(TForm)
Image1: TImage;
Timer1: TTimer;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
N3: TMenuItem;
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure N1Click(Sender: TObject); procedure N2Click(Sender: TObject); procedure N3Click(Sender: TObject); private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.FormCreate(Sender: TObject);
var
i,x,y,z: integer;
begin
Label1.Caption := IntToStr(0); Label2.Caption := IntToStr(0); Label3.Caption := IntToStr(0); Label4.Caption := IntToStr(0);
x := StrToInt(Label1.Caption);
y := StrToInt(Label2.Caption);
z := StrToInt(Label4.Caption); Image1.Canvas.Pen.Color := clRed;
For i := 1 to 10 do begin Image1.Canvas.PolyLine([Point(150+Trunc(125*Cos(2*i*Pi/10-z/360)-x), 150-Trunc(125*Sin(i*2*Pi/10-z/360)-x)), Point(150, 150)]);
end;
Image1.Canvas.Pen.Color := clYellow; Image1.Canvas.Brush.Color := clYellow; Image1.Canvas.Pie(50, 50, 250, 250, 0, 0, 0, 0);
end;
procedure TForm1.Timer1Timer(Sender: TObject);
var
i,x,y,z: integer;
begin
x := StrToInt(Label1.Caption);
y := StrToInt(Label2.Caption);
z := StrToInt(Label4.Caption); Image1.Canvas.Pen.Color := clWhite; For i := 1 to 10 do begin Image1.Canvas.PolyLine([Point(150+Trunc(125*Cos(2*i*Pi/10-(z+1)/360)-y), 150-Trunc(125*Sin(2*i*Pi/10-(z+1)/360)-y)), Point(150, 150)]);
end; Image1.Canvas.Pen.Color := clRed; For i := 1 to 10 do begin Image1.Canvas.PolyLine([Point(150+Trunc(125*Cos(2*i*Pi/10-z/360)-x), 150-Trunc(125*Sin(i*2*Pi/10-z/360)-x)), Point(150, 150)]);
end;
Image1.Canvas.Pen.Color := clYellow; Image1.Canvas.Brush.Color := clYellow; Image1.Canvas.Pie(50, 50, 250, 250, 0, 0, 0, 0); Label4.Caption := IntToStr(z-1); end;
procedure TForm1.N1Click(Sender: TObject); begin Timer1.Enabled := True; end;
procedure TForm1.N2Click(Sender: TObject);
begin Timer1.Enabled := False;
end; p
rocedure TForm1.N3Click(Sender: TObject);
begin Close;
end;
end.
189
236
Ответы на вопрос:
Реши свою проблему, спроси otvet5GPT
-
Быстро
Мгновенный ответ на твой вопрос -
Точно
Бот обладает знаниями во всех сферах -
Бесплатно
Задай вопрос и получи ответ бесплатно
Популярно: Другие предметы
-
djdjsjsj29.10.2020 11:46
-
sayhun04.06.2022 18:45
-
Таисия28128.06.2021 09:36
-
LaimZ21.04.2022 11:35
-
pop999912.05.2022 17:19
-
Pasha232224.08.2022 20:22
-
maria102030405008.03.2020 10:40
-
milanali27.04.2020 02:56
-
miraaa37210.05.2021 04:07
-
anisiloppoosa02.01.2021 14:02
Есть вопросы?
-
Как otvet5GPT работает?
otvet5GPT использует большую языковую модель вместе с базой данных GPT для обеспечения высококачественных образовательных результатов. otvet5GPT действует как доступный академический ресурс вне класса. -
Сколько это стоит?
Проект находиться на стадии тестирования и все услуги бесплатны. -
Могу ли я использовать otvet5GPT в школе?
Конечно! Нейросеть может помочь вам делать конспекты лекций, придумывать идеи в классе и многое другое! -
В чем отличия от ChatGPT?
otvet5GPT черпает академические источники из собственной базы данных и предназначен специально для студентов. otvet5GPT также адаптируется к вашему стилю письма, предоставляя ряд образовательных инструментов, предназначенных для улучшения обучения.