Advertisement
Tvor0zhok

КГ лабораторная №1

Feb 11th, 2022 (edited)
126
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.15 KB | None | 0 0
  1. private: System::Void MyForm_Paint(System::Object^ sender, System::Windows::Forms::PaintEventArgs^ e) {
  2. // описываем переменную g - область рисования, ссылку на объект типа System::Drawing::Graphics^
  3. Graphics^ g = e -> Graphics;
  4.  
  5. // Закрасим всю область рисования g в некоторый цвет
  6. g -> Clear(Color::Aquamarine);
  7.  
  8. // Определяем перья-элементы типа System::Drawing::Pen
  9. // У каждого пера имеются 2 хар-ки: цвет и толщина
  10. // Цвет обязательно передается в качестве пар-ма, толщина может быть задана по умолч.
  11. Pen^ redPen = gcnew Pen(Color::Red, 6);
  12. Pen^ bluePen = gcnew Pen(Color::Blue, 10);
  13. Pen^ greenPen = gcnew Pen(Color::Green, 5);
  14.  
  15. // Начертим отрезки
  16. // Высота окна - this -> ClientRectangle.Height
  17. // Ширина окна - this -> ClientRectangle.Width
  18. // Начало координат в левом верхнем углу
  19.  
  20. float h = this->ClientRectangle.Height;
  21. float w = this->ClientRectangle.Width;
  22.  
  23. g->DrawLine(redPen, 0.0, 0.0, w, h);
  24. g->DrawLine(bluePen, 90.0, 50.0, w, 80.0);
  25.  
  26. // Строим ромб:
  27.  
  28. float h1 = h / 3, h2 = 2 * h1;
  29. float w1 = w / 3, w2 = 2 * w1;
  30.  
  31. g->DrawLine(greenPen, w2, 0.0, w, h2);
  32. g->DrawLine(greenPen, w, h2, w1, h);
  33. g->DrawLine(greenPen, w1, h, 0.0, h1);
  34. g->DrawLine(greenPen, 0.0, h1, w2, 0.0);
  35.  
  36. // Добавим надпись
  37. // Текст записывается кистью:
  38. SolidBrush^ drawBrush = gcnew SolidBrush(Color::Black);
  39.  
  40. // Опишем шрифт
  41. System::Drawing::Font^ drawFont = gcnew System::Drawing::Font("Arial", 10);
  42.  
  43. // Выведем надпись
  44. g->DrawString("Надпись на фоне", drawFont, drawBrush, 40, 100);
  45. }
  46. private: System::Void MyForm_Resize(System::Object^ sender, System::EventArgs^ e) {
  47. // Добавляем устойчивость рисунка относительно изменения размера окна
  48. Refresh();
  49. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement