Графіка в visual basic

Windows - графічна ОС, а значить будь-який програміст "під Windows" повинен вміти малювати (програмно звичайно).
Для найпростішої графіки в Visual Basic (як і в інших Basic "ах) використовуються команди PSet, Line і Circle. Програмісти, що мали справу з іншими Basic" ами, запитають: Де Paint. Get, Put? На жаль таких команд Visual Basic не розуміє, та й існуючі реалізовані трохи по іншому.
Visual Basic використовує принципи ООП, а значить все графічні оператори - методи, і повинні мати об'єкт-"господар". Такими господарями, є Форма (Form), Картинка (PictureBox), і призначений для користувача OCX (UserControl). У кожного з них реалізовані, графічні методи і викликати їх слід за всіма правилами, наприклад: Picture1.PSet (1,1). До цього додам, що при роботі з формою або власним OCX, вони маються на увазі як об'єкт за умовчанням, а значить PSet (1,1) поставить крапку на формі. Або не поставить. Чому?
У цьому ще одна особливість Visual Basic. Об'єкт для малювання потрібно підготувати. У кожного об'єкта, який може містити графіку, є кілька особливих властивостей, розглянемо їх докладніше.
AutoRedraw = True / False - в загальних рисах, - це властивість дозволяє / забороняє малювання. Якщо воно встановлено в True, створюється як-би шар над завантаженої в об'єкт картинкою, на якому власне і малюють. Причому оператори не впливають на завантажену картинку.
ScaleMode - Масштаб. За замовчуванням - твіпи (Twips). Вибір одиниць виміру великий, але по-моєму, розумно використовувати тільки ще Поінти (Points) і Піксели (Pixels).
DrawMode - Тип малювання, а точніше логічна операція, що застосовується до існуючого зображенню.
DrawStyle - Стиль малювання. Вам дозволяється вибрати варіант зображення ліній: 0-Повністю (Solid), 1-Тирі (Dash), 2-Точка (Dash), 3-Тирі-точка (Dash-Dot), 4-Тирі-Точка-Точка (Dash-Dot -Dot) і 5-Прозоро (Transparent) .По замовчуванням Solid
DrawWidth - Розмір точки.
ForeColor - Колір ліній і тексту по умолчанію.Чёрний за замовчуванням
FillColor - Колір заливки, для замкнутих фігур.Чёрний за замовчуванням
FillStyle - Стиль заливки для замкнутих фігур: 0-Повністю (solid), 1-Прозорий (Transparent), 2-Горизонтальні лінії (Horizontal Line), 3-Вертикальні лінії (Vertical Line), 4-По діагоналі направо зверху (Upward Diagonal) , 5-За Діагоналі направо знизу (Downward Diagonal), 6-хрест (Cross), 7-Дігональний хрест (Diagonal Cross). За замовчуванням значення - 1.
Координати при малюванні відраховуються з лівого верхнього кута.
Отже об'єкт ми підготували, тепер розглянемо методи. Почнемо з самого малого - точки.
PSet [Step] (X, Y) [, Колір] - Малює точку в координатах (X, Y). При використанні Step відраховує X і Y, як зміщення від координат останньої точки Якщо колір не вказано, використовується колір за замовчуванням (ForeColor).
Line (X1, Y1) - [Step] (X2, Y2), [Колір] [, Bf / B] - Малює лінію (порожній [B] / зафарбований [Bf] прямокутник. Для лінії координати задають початкову і кінцеву точку. Для прямокутника - координати лівого верхнього і правого нижнього кутів відповідно.
Circle (X, Y), Радіус [, Колір] - Малює коло з центром в X, Y, заданим радіусом і кольором (або кольором за замовчуванням).
Cls - Очищає екран (без зміни картинку властивості Picture).
Основні графічні методи ми розібрали. Тепер поговоримо про втрати і надбання. Як я вже говорив Windows забрала з Basic "а оператори Panit, Get, Put. Але при цьому вона повернула їх об'єднання.
PaintPicture (SrcPicture, X1, Y1, [Width1], [Height1], [X2], [Y2], [Width2], [Height2], [dwRop]) - Метод копіює зображення з вихідного об'єкта в об'єкт - господар, дотримуючись зазначених параметрам. Розміри об'єктів можуть бути різні. По суті справи PaintPicture - оболонка для API-функцій StretchBlt і BitBlt, так що якщо хочете миєте користуватися ними.

Крім цього змінився оператор Print він став абсолютно графічним. Про нього скажу тільки, що місце для виведення тексту визначається властивостями об'єкта-господаря CurrentX. CurrentY. Управління шрифтом через властивість Font. і його властивості.

Ось загалом-то і все по графіку. Додам тільки, що можливості графіки можна розширити через Windows API.