Графічний режим роботи має на увазі використання операторів, що дозволяють створювати графічні об'єкти: точки, відрізки, прямокутники, кола, дуги, сектори, еліпси. З цих елементарних об'єктів можна створювати більш складні.
Спільними параметрами для всіх графічних об'єктів є:- координати, що визначають його розташування у вікні;
- колір об'єкта;
- колір заливки об'єкта, якщо він обмежений замкнутою лінією.
Координати розташування об'єктів
Координати відраховуються від лівого верхнього кута вікна. Одиницею відліку за замовчуванням є Twip. У процесі розробки програми можна змінити одиницю виміру, використовуючи властивість об'єкта ScaleMode.
Колір може задаватися двома способами, в залежності від обраної палітри:- 16 кольорова палітра використовує команду QBcolor (n), де n - номер кольору:
- палітра, отримана при змішуванні різної кількості червоного, зеленого і блакитного кольорів задається:
- командою RGB (n1, n2, n3). Тут n1, n2 і n3 числа в діапазоні від 0 до 255, які задають кількість кожного з базових квітів в отриманому відтінку. Наприклад: RGB (0, 255, 0) - задає зелений колір без домішки інших відтінків (кольорів).
- константами виду: H8000000F, H000000FF і т.д.
Розглянемо процедури виведення графічних примітивів на заданий об'єкт.
1. Точка.
[Об'єкт.] Pset (x, y) [, колір]
- де (x, y) - координати точки
2. Лінія (відрізок), прямокутник.
[Об'єкт.] Line [(x1, y1)] - (x2, y2) [, Колір] [, B [F]]
- де (x1, y1) - координати початкової точки відрізка. Якщо вони не вказані, відрізок починається від поточної позиції. Координати кінцевої точки відрізка (x2, y2) потрібно вказувати обов'язково.
Параметр Колір визначає колір лінії. Якщо він не заданий, то для малювання використовується значення властивості форми ForeColor. Для явного завдання значення кольору можна використовувати функцію QBColor (n) або RGB (n1, n2, n3).
Якщо вказано параметр B (Box-прямокутник), то замість лінії викреслюється прямокутник; пари координат визначають положення його протилежних по діагоналі кутів. Прямокутник заповнюється кольором (див. Далі зафарбовування фігур), зазначеним в FillColor, а тип заповнення визначається властивістю FillStyle форми. Якщо вказано параметр F, то прямокутник закрашивается тим же кольором, що і кордони. Параметр F використовується тільки разом з параметром B.
3. Окружність, дуга, сектор, еліпс.
Circle (x, y), R [, Колір] [[-] n1, [-] n2 [, n3]]
- де (x, y) - координати центру кола (дуги, сектори, еліпса)
Параметр Колір визначає колір лінії. Якщо він не заданий, то для малювання використовується значення властивості форми ForeColor. Для явного завдання значення кольору можна використовувати функцію QBColor (n) або RGB (n1, n2, n3).
Параметри n1 і n2 визначають кути початку і кінця дуги в радіанах і відраховуються проти годинникової стрілки. Знак мінус перед параметрами є ознакою сектора, а при його відсутності викреслюється дуга.
Параметр n3 визначає коефіцієнт стиснення при кресленні еліпса. Якщо його знамення менше 1 то здійснюється стиснення в вертикальному напрямку, якщо більше 1 - стиснення в горизонтальному напрямку.
Зафарбування замкнутих фігур
-
Замкнуту фігуру - прямокутник, окружність, сектор еліпс - можна зафарбувати (заливка). Для цього необхідно вказати колір і стиль зафарбовування.
FillStyle = n
- де n - числа в діапазоні від 0 до 7, що задають суцільну зафарбовування, зафарбовування горизонтальної або вертикальної штрихуванням і т. д.