igorich1376

PanelWPF + Turtle

Jul 24th, 2024
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Pascal 1.52 KB | None | 0 0
  1. program My_Turtle;
  2. uses GraphWPF, Controls, WPFObjects, TurtleWPF;
  3. /////////////
  4. procedure turtleLine;
  5. begin
  6.   Down;Forw(100);
  7. end;
  8. ///////////
  9. procedure turtleCross;
  10. begin
  11.   Down; Forw(100);Turn(180);Forw(50);
  12.   TurnLeft(90);Forw(50);Up;TurnLeft(180);
  13.   Forw(50);Down;Forw(50);
  14. end;
  15. /////////////
  16. procedure turtleSquare;
  17. begin
  18.   Down;
  19.   loop 4 do
  20.     begin
  21.       Forw(100);Turn(90);
  22.     end;
  23. end;
  24. /////////////
  25. begin
  26. var turtleX := 650 div 2;
  27. var turtleY := 550 div 2;
  28. MoveTo(turtleX,turtleY);
  29. SetSpeed(5);SetColor(Colors.Blue);SetWidth(5);
  30. window.title := 'Черепаха';
  31. LeftPanel(150,Colors.Orange);
  32. var x := 10;
  33. var w := 130;
  34. //////////
  35. var btnLine := Button(x,10,'Линия',w);
  36. btnLine.Tooltip := 'Черепаха рисует линию';
  37. btnLine.Click := procedure () → turtleLine;
  38. //////////
  39. var btnCross := Button(x,10,'Крестик',w);
  40. btnCross.Tooltip := 'Черепаха рисует крестик';
  41. btnCross.Click := procedure () → turtleCross;
  42. //////////
  43. var btnSquare := Button(x,10,'Квадрат',w);
  44. btnSquare.Tooltip := 'Черепаха рисует квадрат';
  45. btnSquare.Click := procedure () → turtleSquare;
  46. //////////
  47. var btnAtFirst := Button(x,10,'Сначала',w);
  48. btnAtFirst.Tooltip := 'Всё очистить';
  49. btnAtFirst.Click := procedure
  50. begin
  51.   Window.Clear;
  52.   MoveTo(turtleX,turtleY);
  53. end;
  54. //////////
  55. var btnExit := Button(x,10,'Выход',w);
  56. btnExit.Tooltip := 'Выход';
  57. btnExit.Click := procedure → Window.Close;
  58.  
  59. end.
Advertisement
Add Comment
Please, Sign In to add comment