Графические возможности стандартной библиотеки VCL

Создание программы для закрашивания рисунка с заданием цвета из палитры цветов с помощью Библиотеки Визуальных Компонент VCL (Visual Component Library). Функции и процедуры модуля Graphics. Работа с отдельными точками растра, рисование сплошных объектов.

Рубрика Программирование, компьютеры и кибернетика
Вид лабораторная работа
Язык русский
Дата добавления 28.10.2013
Размер файла 996,6 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

1. Лабораторная работа. Графические возможности стандартной библиотеки VCL

visual component library graphics

Цель работы: изучение графических возможностей стандартной библиотеки визуальных компонентов VCL, функций и процедур модуля Graphics. научиться работать с отдельными точками растра. Освоить рисование сплошных объектов.

Задание: поместить на форму рисунок и создать программу для закрашивания рисунка квадратами 20х20 пикселей с возможностью задания цвета из палитры цветов. Использовать дополнительное окно вывода и выбора палитры цветов.

Описание

Включите в заголовочный файл Unit1.h следующие модули:

//---------------------------------------------------------------------------

#ifndef Unit1H

#define Unit1H

//---------------------------------------------------------------------------

#include <Classes.hpp>

#include <Controls.hpp>

#include <StdCtrls.hpp>

#include <Forms.hpp>

#include <ExtCtrls.hpp>

#include <jpeg.hpp>

#include <ComCtrls.hpp>

#include <Dialogs.hpp>

#include <Graphics.hpp>

//---------------------------------------------------------------------------

Используйте следующие управляющие элементы и фрагменты кода:

1. Поместить на форму 3 компонента TButton, 1 компонент типа TColorDialog, 1 компонент TStatusBar и 2 компонента TImage.

2. Одна кнопка закрывает приложение:

void __fastcall TForm1::Button3Click(TObject *Sender)

{

Form1->Close();

}

3. Выбор цвета из палитры в обработчике событий другой кнопки:

void __fastcall TForm1::Button1Click(TObject *Sender)

{

ColorDialog1->Color=Image1->Canvas->Pen->Color;

if(ColorDialog1->Execute()) {

Image1->Canvas->Pen->Color=ColorDialog1->Color;//цвет пера

Image1->Canvas->Brush->Color=ColorDialog1->Color;//цвет кисти

StatusBar1->Panels->Items[1]->Text=(AnsiString)ColorDialog1->Color;

}

}

4.Обработчик кнопки для отмены всех изменений:

void __fastcall TForm1::Button2Click(TObject *Sender)

{Image1->Picture->Assign(Image2->Picture);}

Данный обработчик загружает битовую матрицу из невидимого компонента Image2 в Image1 который отображается на экране.

5. Для отображения перемещения указателя мыши следующий обработчик:

void __fastcall TForm1::Image1MouseMove(TObject *Sender, TShiftState Shift,

int X, int Y)

{

StatusBar1->Panels->Items[0]->Text=(AnsiString)X+":"+(AnsiString)Y;

}

6. Для рисования квадрата по щелчку мыши используется обработчик события:

void __fastcall TForm1::Image1MouseDown(TObject *Sender,

TMouseButton Button, TShiftState Shift, int X, int Y)

{

TRect Rct;

Rct.Left=X-10;

Rct.Top=Y-10;

Rct.Right=X+10;

Rct.Bottom=Y+10;

Image1->Canvas->Rectangle(Rct);

Image1->Canvas->FillRect(Rct);

}

В нём используется обработчик события нажатия любой кнопки мыши (OnMouseDown). В результате отображение координат в строке статуса и координаты, используемые для вывода квадрата, локализованы своими обработчиками, как это показано на рисунке 2 с квадратами размером 20/20 пикселей.

Порядок задания:

Для реализации поставленной задачи необходимо выполнить следующую последовательность действий:

1. Поместить на форму компонент Image из вкладки Additional и в инспекторе объектов выбрать свойство Picture. В появившемся окне (рисунок 1) выбрать (Load…) рисунок и нажать кнопку ОК.

Рисунок 1

2. Поместить на форму компонент StatusBar. (Он находится на вкладке Win32). В инспекторе объектов изменить следующие значения свойств:

· установить свойство Align в значение alBottom;

· выбрать свойство Panels и с помощью кнопки в левом верхнем углу разбить панель на две части (рисунок 2). Установить для свойства Width каждой из частей компонента значения 100 и 50 соответственно.

Рисунок 2

3. Из вкладки Dialogs поместить на форму компонент ColorDialog.

4. Из вкладки Standard поместить на форму три компонента Button. На рисунке 3 продемонстрировано окно приложения на данном этапе проектирования.

Рисунок 3

· Первая кнопка служит для выбора цвета из палитры цветов. В соответствии с этим нужно изменить свойство Caption этого компонента. Затем нужно перейти на вкладку Events (события) и создать событие OnClick. Код данной процедуры приведен ниже.

· Вторая кнопка служит для отмены всех действий после закрашивания квадратов (фактически выполняет функции резинки). Для нее нужно создать обработчик события OnClick, щелкнув два раза по кнопке.

· Третья кнопка служит для закрытия приложения и ее обработчик события содержит один оператор Close().

5. Для вывода в строку StatusBar панели значение координат мыши в первую очередь нужно объявить глобальные переменные координат:

Затем следует создать обработчик события для компонента Image на движение мыши в области рисунка:

6. Для прорисовки квадратов при щелчке мыши на компоненте Image для этого компонента устанавливается событие OnClick.

7. Иллюстрация работы приложения показана на рисунке 4.

Рисунок 4

Размещено на Allbest.ru


Подобные документы

  • Общая характеристика системы программирования Delphi, а также принципы создания ее компонентов. Описание значений файлов приложения, созданного с помощью Delphi. Структура и свойства библиотеки визуальных компонентов (Visual Component Library или VCL).

    отчет по практике [1,1 M], добавлен 07.12.2010

  • Теоретические основы разработки Windows-приложений с использованием библиотеки MFC. Создание приложения с помощью Visual C++. Описание логической структуры приложения. Установка и запуск программы. Входные и выходные данные. Преимущество MFC библиотек.

    курсовая работа [563,2 K], добавлен 21.06.2011

  • Определение программного модуля. Принципы использования dll-библиотеки. Преимущества и недостатки использования dll-библиотек. Описание коэффициентов моделей. Разработка структуры классов. Реализация библиотеки классов в среде разработки MS Visual Studio.

    дипломная работа [676,6 K], добавлен 16.06.2015

  • Создание программы, с помощью библиотеки OpenGL рисующей проволочный чайник с поворотом рисунка вокруг осей X, Y, Z. Построение отрографической проекции. Установка области отображения. Функция обработки сообщений с клавиатуры. Главный цикл приложения.

    контрольная работа [151,2 K], добавлен 21.01.2011

  • Функции графического редактора Paint, создание рисунка (задание размера, изменение цвета). Возможности программы "Калькулятор". Работа с блокнотом, ввод текста с помощью клавиатуры. Текстовый процессор WordPad: простейшие приемы форматирования документов.

    контрольная работа [434,3 K], добавлен 17.11.2011

  • Понятие стандартной библиотеки C++. Количество удобных операций и методов. Создание пустой строки и конструктор копирования. Создание строки на основе нуль-терминальной строки. Примеры использования конструкторов. Присвоение строки типа string.

    презентация [221,2 K], добавлен 04.05.2012

  • Создание приложения на языке программирования Visual C++ с использованием библиотеки MFC на тему "Тестирование по разделу "Законы механики Ньютона". Описание логической структуры программы, тестовых прогонов. Требования к техническому обеспечению.

    курсовая работа [2,2 M], добавлен 29.06.2011

  • Анализ графического модуля "graphics.h". Анализ функции модуля, констант, типов и его глобальных переменных. Реализация пользовательской библиотеки "mouse.h". Особенности работы с мышкой в графическом и обычном режимах, разработка программного кода.

    курсовая работа [36,5 K], добавлен 02.12.2009

  • Иерархия основных классов MFC (базовой библиотеки классов). Структура простой MFC программы. Работа с текстом в MFC. Функции вывода текста, установки цветов, режимов отображения, получение метрик. Применение контекста устройства, обработка сообщений.

    контрольная работа [27,8 K], добавлен 11.08.2010

  • Использование графических возможностей Турбо Паскаля, подключение графического модуля Graph. Графические функции и процедуры. Общая структура графической программы. Построение фигур, определение цветов и стилей, работа с текстом, сообщения об ошибках.

    реферат [109,3 K], добавлен 28.04.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.