fork download
  1. program Lab5;
  2.  
  3. uses
  4. SysUtils, Crt;
  5.  
  6. type
  7. TMouseButton = (mbLeft, mbRight, mbMiddle);
  8. TShiftState = (ssShift, ssAlt, ssCtrl, ssLeft, ssRight, ssMiddle, ssDouble);
  9.  
  10. procedure DemonstrateMouseEvents;
  11. var
  12. x, y: Integer;
  13. button: TMouseButton;
  14. begin
  15. WriteLn('=== ДЕМОНСТРАЦИЯ СОБЫТИЙ МЫШИ ===');
  16. WriteLn('OnMouseDown - нажатие кнопки мыши');
  17. WriteLn('OnMouseUp - отпускание кнопки мыши');
  18. WriteLn('OnMouseMove - перемещение мыши');
  19. WriteLn;
  20. end;
  21.  
  22. procedure DemonstrateKeyboardEvents;
  23. var
  24. key: Char;
  25. begin
  26. WriteLn('=== ДЕМОНСТРАЦИЯ СОБЫТИЙ КЛАВИАТУРЫ ===');
  27. WriteLn('OnKeyPress - нажатие символьной клавиши');
  28. WriteLn('OnKeyDown - нажатие любой клавиши');
  29. WriteLn('OnKeyUp - отпускание любой клавиши');
  30. WriteLn;
  31. end;
  32.  
  33. procedure DemonstrateDragDrop;
  34. begin
  35. WriteLn('=== ДЕМОНСТРАЦИЯ DRAG&DROP ===');
  36. WriteLn('DragMode - режим перетаскивания');
  37. WriteLn('OnDragOver - перетаскивание над компонентом');
  38. WriteLn('OnDragDrop - бросок данных');
  39. WriteLn;
  40. end;
  41.  
  42. procedure ShowStatusBarInfo;
  43. begin
  44. WriteLn('=== КОМПОНЕНТ TStatusBar ===');
  45. WriteLn('Панель состояния с тремя секциями:');
  46. WriteLn('1. Дата: ', DateToStr(Date));
  47. WriteLn('2. Координаты мыши при нажатии');
  48. WriteLn('3. Текущие координаты мыши');
  49. WriteLn;
  50. end;
  51.  
  52. procedure ShowHints;
  53. begin
  54. WriteLn('=== ПОДСКАЗКИ (HINT) ===');
  55. WriteLn('Panel1: "Эту панель можно перемещать"');
  56. WriteLn('Edit1: "Введите текст здесь"');
  57. WriteLn('Edit2: "Перетащите сюда текст из Edit1"');
  58. WriteLn;
  59. end;
  60.  
  61. // Демонстрация преобразования регистра
  62. procedure DemonstrateCaseConversion;
  63. var
  64. input: string;
  65. i: Integer;
  66. begin
  67. WriteLn('=== ПРЕОБРАЗОВАНИЕ В ВЕРХНИЙ РЕГИСТР ===');
  68. Write('Введите текст (латинские буквы): ');
  69. ReadLn(input);
  70.  
  71. for i := 1 to Length(input) do
  72. begin
  73. if input[i] in ['a'..'z'] then
  74. input[i] := Chr(Ord(input[i]) - 32);
  75. end;
  76.  
  77. WriteLn('Результат: ', input);
  78. WriteLn;
  79. end;
  80.  
  81. begin
  82. ClrScr;
  83. WriteLn('ЛАБОРАТОРНАЯ РАБОТА №5');
  84. WriteLn('Основы работы с базами данных и событиями');
  85. WriteLn('==========================================');
  86. WriteLn;
  87.  
  88. DemonstrateMouseEvents;
  89. DemonstrateKeyboardEvents;
  90. DemonstrateDragDrop;
  91. ShowStatusBarInfo;
  92. ShowHints;
  93. DemonstrateCaseConversion;
  94.  
  95. WriteLn('Нажмите Enter для выхода...');
  96. ReadLn;
  97. end.
Success #stdin #stdout 0.01s 5324KB
stdin
7 21
1 2 547152
1 3 509157
1 4 539282
1 5 541645         
1 6 458433
1 7 385173

2 3 131528
2 4 92735
2 5 150511
2 6 94440
2 7 194542
3 4 216600
3 5 272401
3 6 157176
3 7 124077
4 5 57785
4 6 97323
4 7 242232
5 6 136663
5 7 283862
6 7 147426
stdout
ЛАБОРАТОРНАЯ РАБОТА №5
Основы работы с базами данных и событиями
==========================================

=== ДЕМОНСТРАЦИЯ СОБЫТИЙ МЫШИ ===
OnMouseDown - нажатие кнопки мыши
OnMouseUp - отпускание кнопки мыши
OnMouseMove - перемещение мыши

=== ДЕМОНСТРАЦИЯ СОБЫТИЙ КЛАВИАТУРЫ ===
OnKeyPress - нажатие символьной клавиши
OnKeyDown - нажатие любой клавиши
OnKeyUp - отпускание любой клавиши

=== ДЕМОНСТРАЦИЯ DRAG&DROP ===
DragMode - режим перетаскивания
OnDragOver - перетаскивание над компонентом
OnDragDrop - бросок данных

=== КОМПОНЕНТ TStatusBar ===
Панель состояния с тремя секциями:
1. Дата: 26-10-25
2. Координаты мыши при нажатии
3. Текущие координаты мыши


=== ПОДСКАЗКИ (HINT) ===

Panel1: "Эту панель можно перемещать"

Edit1: "Введите текст здесь"

Edit2: "Перетащите сюда текст из Edit1"


=== ПРЕОБРАЗОВАНИЕ В ВЕРХНИЙ РЕГИСТР ===

Введите текст (латинские буквы): Результат: 7

 21


Нажмите Enter для выхода...