Упражнения. 1. От левого верхнего до нижнего правого угла рабочей области окна вывести текст таким образом, чтобы он полностью помещался в окне при любых изменениях

1. От левого верхнего до нижнего правого угла рабочей области окна вывести текст таким образом, чтобы он полностью помещался в окне при любых изменениях размеров окна. Использовать шрифт Times New Roman Cyr.

2. В окне приложения многократно отобразить текст "Привет!!!" жирным шрифтом Arial Cyr. Вывод текста начинать от нижнего края окна и продолжать до верхнего края, плавно меняя цвет текста от желтого до черного и цвет фона от синего до желтого. При этом текст должен полностью помещаться по ширине при любых размерах окна.

3. В центре окна нарисовать эллиптическую диаграмму. Диаграмму разбить на секторы 25, 65 и 10 % красного, зеленого и голубого цветов и указать по центру дуги каждого сектора проценты. При всех изменениях размеров окна диаграмма должна быть отображена полностью.

4. Разработать окно перелистывания таблицы. Причем в окне всегда отображать заголовки столбцов. Первый столбец должен содержать номера строк, а другие столбцы – вещественные числа, усеченные до шести значащих цифр. Рисовать столько строк и столбцов, которые без обрезания помещаются в окне.

5. В окне приложения отобразить рейтинг участников какого-либо события: для каждого участника нарисовать геометрическое тело (например, цилиндр), высота которого пропорциональна рейтингу участника, ниже фигуры вывести фамилию участника, выше – рейтинг (в %). Причем текст должен быть наклонен на некоторый угол. Для всех участников использовать разные цвета.

6. В окне приложения вывести текст "Анкета" на русском языке и строго под ним "Anketa" на английском языке, первую букву "А" увеличить в размере и сделать общей для обоих слов. Букву "А" вывести красным цветом, остаток слова на русском языке – синим, на английском – зеленым. При этом выводимый текст должен занимать всю высоту или ширину окна при любых размерах окна.

7. Текст заголовка окна отобразить красным цветом на фоне заголовка, а правее этого текста нарисовать синий эллипс, вписанный в зеленый прямоугольник шириной в 3 полосы заголовка.

8. В рабочей области снизу вверх многократно отобразить строку "Пробный текст", плавно меняя фон и цвет и увеличивая высоту и толщину шрифта. Вывод центрировать по горизонтали. Начальную высоту шрифта взять по умолчанию. Вывод завершается, если очередная строка по высоте не помещается в рабочей области.

9. В окне приложения в три столбика вывести приветствие. В левом и правом столбцах размер шрифта должен возрастать сверху вниз, а в среднем – снизу вверх. Цвета вывода должны быть различны при каждом выводе текста. В случае перекрытия текстов различных столбцов текст не должен стираться, причем правый столбец может перекрывать левый, а средний – оба столбца.

10. В центре окна нарисовать мишень из 10 полей и в каждом поле вывести его значение (от 1 с краю до 10 в центре). При любых изменениях размеров окна мишень должна полностью отображаться в окне. Поля раскрасить случайно выбранными различными цветами.

11. В окне отобразить черным цветом оси координат (Оху) и синим цветом график функции c*cos(x), где х принимает значения от 0 до 10 тс и с*0. Размах вывода по осям ординат и абсцисс – 90 % размеров окна при любых изменениях размеров.

12. Центр рабочей области занимает малиновый прямоугольник с вписанным голубым эллипсом размером в половину области по осям. После нажатия левой клавиши мыши это место занимает синий прямоугольник, а правой клавиши – зеленый эллипс. При изменении размера окна вернуться к исходному состоянию.

13. Описать функцию, которая в указанном прямоугольнике строит эллиптическую диаграмму. Количество секторов, их доля в процентах и цвета закрашивания также передаются аргументами вызова функции.

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

15. В центре экрана создать квадратное окно с текстом заголовка и стиля WS_POPUPWINDOW. В окне нарисовать шахматную доску и обозначить поля. При нажатии левой клавиши мыши над полем доски сообщить имя поля.

16. В рабочей части окна при движении мыши с нажатой левой клавишей рисовать траекторию движения курсора мыши. При нажатии правой клавиши мыши поменять цвет для рисования.

17. Рабочую область закрасить спектром цветов, начиная слева красным цветом и заканчивая, на правом краю, синим. Цвет изменять в 4 этапа: на первом этапе, при максимальном красном составляющем, увеличивать зеленую, на втором, при максимальном зеленом, уменьшать красную составляющую, затем, при максимальном зеленом, увеличивать синюю составляющую и, на последнем этапе, при максимальном синем уменьшать зеленую составляющую.

18. В окне отобразить клетки для игры в крестики-нолики. При нажатии левой клавиши мыши в клетке нарисовать крестик, а правой – нолик. Запретить заполнять клетку более одного раза. Рекомендация: если при перемещении курсора была нажата левая клавиша мыши, то параметр wParam содержит значение MK_LBUTTON.

19. Нарисовать светофор, в котором цвет "зажигается" при нажатии на эту лампу левой клавишей мыши. Одновременно может гореть только один цвет.

20. В окне с помощью мыши выделить прямоугольник и создать эффект мигания этого прямоугольника.

21. Нарисовать несколько геометрических фигур. При нажатии над любой из них показать, что выбрана эта фигура.

22. Нарисовать графики функций 2*a*Cos(kt)*exp(-nt) и 0.5*a*Sin(kt)*exp(-nt).

23. В рабочей области окна кистью по умолчанию в метрической системе координат нарисовать эллипс.

24. Создать окно с полосами просмотра и обеспечить просмотр всего содержимого таблицы.

25. Разработать функцию вывода текста в заданной позиции со специальным эффектом. Эффект заключается в том, что текст медленно "выплывает" слева направо. Используя эту функцию отобразить рейтинги участников некоторого события.

Приложение 3

Таблица 3.1. Список системных цветов в RGB-представлении

Красный цвет Зеленый цвет Голубой цвет Цвет в системной палитре  
      Черный  
      Темно-красный  
      Темно-зеленый  
      Темно-желтый  
      Темно-голубой  
      Темно-малиновый  
      Темно-синий  
      Светло-серый  
      Светло-зеленый  
      Светло-голубой  
      Кремовый  
      Светло-серый  
      Серый  
      Красный  
      Зеленый  
      Желтый  
      Синий
      Малиновый
      Голубой (циан)
      Белый

Таблица 3.2. Список режимов рисования

Режимы рисования Цвет пикселя
R2_BLACK Черный
R2_COPYPEN Цвет пера
R2_MASKNOTPEN или R2_MERGENOTPEN Комбинация цвета пикселя до рисования и инверсии цвета пера
R2_MASKPEN или R2_MERGEPEN Комбинация цвета пикселя до рисования и цвета пера
R2_MASKPENNOT или R2_MERGEPENNOT Комбинация инверсии цвета пикселя до рисования и цвета пера
R2_NOP Остается неизменным
R2_NOT Инверсия цвета пикселя до рисования
R2_NOTCOPYPEN Инверсия цвета пера
R2_NOTMASKPEN или R2_NOTMERGEPEN Инверсия цвета пикселя до рисования
R2_NOTXORPEN Инверсия цвета R2_XORPEN
R2_WHITE Белый
R2_XORPEN Операция ИСКЛЮЧАЮЩЕЕ ИЛИ к цветам пикселя до рисования и пера

Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: