Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
subjects:programming:pascal:pascalabc:graphabc [2018/06/19 12:43] ¶ |
subjects:programming:pascal:pascalabc:graphabc [2023/03/22 20:08] (текущий) ¶ [Пример рисования] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
====== PascalABC:GraphABC ====== | ====== PascalABC:GraphABC ====== | ||
- | Модуль **GraphABC** (''входит в состав **PascalABC**'') отличается от стандартного модуля **Graph** и предназначен только для работы в ОС семейства Windows((В Linux-версии PascalABC.NET не будет работать ряд модулей: в частности, все графические модули. ''Информация на 2018 г.'')). | + | Модуль **GraphABC** (''входит в состав **PascalABC**'') отличается от стандартного модуля **Graph** и предназначен только для работы в ОС семейства Windows((В Linux-версии ''PascalABC.NET'' не будет работать ряд модулей: в частности, все графические модули. ''Информация на 2018 г.'')). |
Для его подключения используется следующий код: | Для его подключения используется следующий код: | ||
Строка 7: | Строка 7: | ||
===== В справке ===== | ===== В справке ===== | ||
В справке ''PascalABC'', в разделе ''Стандартные модули'' : ''Модуль GraphABC'': | В справке ''PascalABC'', в разделе ''Стандартные модули'' : ''Модуль GraphABC'': | ||
+ | * ''Подпрограммы для работы с графическим окном'' - управление окном \\ (есть и в объектно-ориентированном стиле) | ||
* ''Графические примитивы'' - какие ещё фигуры можно рисовать | * ''Графические примитивы'' - какие ещё фигуры можно рисовать | ||
* ''Цветовые константы'' - какие цвета можно использовать | * ''Цветовые константы'' - какие цвета можно использовать | ||
- | * ''GraphABC: события'' - более подробно о событиях | + | * ''События'' - более подробно о событиях |
- | * ''GraphABC: виртуальные коды клавиш'' - для событий OnKeyDown и OnKeyUp | + | * ''Виртуальные коды клавиш'' - для событий ''OnKeyDown'' и ''OnKeyUp'' |
- | ===== Некоторые цвета ===== | + | ===== Рисование ===== |
+ | ==== Некоторые цвета ==== | ||
|Константа^Цвет^ | |Константа^Цвет^ | ||
^clBlack|Чёрный| | ^clBlack|Чёрный| | ||
Строка 25: | Строка 27: | ||
^clDkGray|Тёмно-серый| | ^clDkGray|Тёмно-серый| | ||
- | ===== Пример рисования: ===== | + | ==== Пример рисования ==== |
<code pascal>Program Figurka; | <code pascal>Program Figurka; | ||
uses GraphABC; | uses GraphABC; | ||
begin | begin | ||
- | SetWindowCaption("Title"); // задаем заголовок графического окна | + | SetWindowCaption('Title'); // задаем заголовок графического окна |
SetWindowSize(800, 600); // задаем размер графического окна | SetWindowSize(800, 600); // задаем размер графического окна | ||
- | CenterOnScreen; // центрируем графическое окно по центру экрана | + | // CenterOnScreen; // центрируем графическое окно по центру экрана |
ClearWindow(clWhite); // очищаем окно указанным цветом | ClearWindow(clWhite); // очищаем окно указанным цветом | ||
- | SetBrushColor(clPurpure); // устанавливаем цвет кисти | + | SetBrushColor(clGreen); // устанавливаем цвет кисти (закрашивание) |
+ | SetPenColor(clRandom); // устанавливаем цвет пера (границы) | ||
SetPixel(10,10,clBlack); // закрашивает один пиксель(x,y,color) | SetPixel(10,10,clBlack); // закрашивает один пиксель(x,y,color) | ||
Строка 45: | Строка 48: | ||
SetFontColor(clBlack); // устанавливаем цвет шрифта | SetFontColor(clBlack); // устанавливаем цвет шрифта | ||
SetFontSize(20); // устанавливаем размер шрифта в pt | SetFontSize(20); // устанавливаем размер шрифта в pt | ||
- | TextOut(300,10,"a+b=c"); // выводим текст (x,y,string) | + | TextOut(300,10,'a+b=c'); // выводим текст (x,y,string) |
end.</code> | end.</code> | ||
Строка 55: | Строка 58: | ||
^OnMouseDown|//procedure// (x, y, mousebutton: **integer**);| | ^OnMouseDown|//procedure// (x, y, mousebutton: **integer**);| | ||
^OnMouseUp|//procedure// (x, y, mousebutton: **integer**);| | ^OnMouseUp|//procedure// (x, y, mousebutton: **integer**);| | ||
- | ^OnMouseMove|//procedure// (x, y, mousebutton: **integer**);| | + | ^OnMouseMove|//procedure// (x, y, mousebutton(( |
+ | ^0|кнопка мыши не нажата| | ||
+ | ^1|левая кнопка мыши| | ||
+ | ^2|правая кнопка мыши| | ||
+ | )): **integer**);| | ||
^OnKeyDown|//procedure// (key: **integer**);| | ^OnKeyDown|//procedure// (key: **integer**);| | ||
^OnKeyUp|//procedure// (key: **integer**);| | ^OnKeyUp|//procedure// (key: **integer**);| | ||
Строка 64: | Строка 71: | ||
==== Код некоторых клавиш ==== | ==== Код некоторых клавиш ==== | ||
* VK_Left | * VK_Left | ||
- | * VK_Up | ||
* VK_Right | * VK_Right | ||
+ | * VK_Up | ||
* VK_Down | * VK_Down | ||
- | * VK_Space | ||
* VK_Enter | * VK_Enter | ||
+ | * VK_Space | ||
* VK_A | * VK_A | ||
* VK_B | * VK_B | ||
* … | * … | ||
+ | Используется для событий ''OnKeyDown'' и ''OnKeyUp''. | ||
==== Пример ==== | ==== Пример ==== | ||
<code pascal>Program MouseCircle; | <code pascal>Program MouseCircle; | ||
uses GraphABC; | uses GraphABC; | ||
- | procedure DoMouseDown(x,y,mb: integer); | + | |
+ | procedure DoMouseDown(x,y,mb: integer); // Процедура-обработчик | ||
begin | begin | ||
if mb=1 then begin | if mb=1 then begin |