Графика: 5 квадратов

Модераторы: Hawk, Romeo, Absurd, DeeJayC, WinMain

Ответить
Вмктория55
Сообщения: 4
Зарегистрирован: 22 авг 2013, 08:18

Я новичок в С++. Помогите пж РЕШИТЬ ЗАДАЧУ с графикой.

Вот задача:

Разработать программу вывода на экран компьютера пяти квадратов по углам и в середине экрана. Запрограммировать поочередный вывод их разными цветами.

Как реализовать ее, с помощью чего?
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Какой компилятор, какая операционная система? Исходя из этого я подскажу, какие функции нужно использовать.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Вмктория55
Сообщения: 4
Зарегистрирован: 22 авг 2013, 08:18

Romeo писал(а):Какой компилятор, какая операционная система? Исходя из этого я подскажу, какие функции нужно использовать.

Microsoft visual studio 2013, операционная система: Windows 7
Аватара пользователя
Romeo
Сообщения: 3126
Зарегистрирован: 02 мар 2004, 17:25
Откуда: Крым, Севастополь
Контактная информация:

Тогда, видимо, следует поправить задание. Не "на экране", а "на окне".

Для написания программы достаточно сделать в Visual Studio новый проект "Win32 Application" (все галочки по умолчанию). После создания проекта написать обработчик сообщения WM_PAINT и в нём воспользоваться GDI функциями для отрисовки квадратов. Узнать размеры клиентского прямоугольника, можно вызывав функцию GetClientRect. Отталкиваясь от его координат, несложно рассчитать координаты искомых пяти прямоугольников и нарисовать их последовательными вызовами функции Rectangle.
Entites should not be multiplied beyond necessity @ William Occam
---
Для выделения С++ кода используйте конструкцию [ code=cpp ] Код [ /code ] (без пробелов)
---
Сообщение "Спасибо" малоинформативно. Благодарность правильнее высказать, воспользовавшись кнопкой "Reputation" в виде звёздочки, расположенной в левом нижнем углу рамки сообщения.
Ответить