ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c

Как Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c

Π£Ρ€ΠΎΠΊΠΈ Windows Forms C++/C#

РисованиС линий в PictureBox MVS C++/C#

Π’ этом ΡƒΡ€ΠΎΠΊΠ΅ Π²Ρ‹ приступитС ΠΊ ΠΈΠ·ΡƒΡ‡Π΅Π½ΠΈΡŽ Π±Π°Π·ΠΎΠ²Ρ‹Ρ… ΠΏΡ€ΠΈΡ‘ΠΌΠΎΠ² рисования Π² «PictureBox». И Π² Π΄Π°Π½Π½ΠΎΠΌ ΡƒΡ€ΠΎΠΊΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ рассмотрСно Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ линию Π·Π°Π΄Π°Π½Π½ΠΎΠΉ Π΄Π»ΠΈΠ½Ρ‹, Ρ†Π²Π΅Ρ‚Π° ΠΈ Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ мСстС поля «PictureBox». Для этого Π½Π°ΠΌ понадобятся: 4 «textBox», 1 «button», ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅ «PictureBox». ΠŸΡ€ΠΈΠΌΠ΅Ρ€Π½Ρ‹ΠΉ Π²ΠΈΠ΄ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹:

ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c

Π’ΠΎ, ΠΊΠ°ΠΊ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Ρ†Π²Π΅Ρ‚ Ρ„ΠΎΠ½Π° элСмСнта (β€œPictureBox”) рассматриваСтся Π² этом ΡƒΡ€ΠΎΠΊΠ΅. Π’ β€œtextBox”ы ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°ΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ поля рисования: Π΄Π²Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ – ΠΎΠ΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°, Π΅Ρ‰Ρ‘ Π΄Π²Π΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ – Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°, которая соСдиняСтся с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ, образуя ΠΎΡ‚Ρ€Π΅Π·ΠΎΠΊ, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² ΠΊΠΎΠ΄Π΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Ρ†Π²Π΅Ρ‚Π°. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌΠΎΠ΅ ΠΈΠ· тСкстового поля, ΠΌΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² «int»Convert::ToInt32(textBox1->Text); А для хранСния значСния создаётся массив, Π΅Π³ΠΎ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±ΡŠΡΠ²ΠΈΡ‚ΡŒ Π² Π²Π΅Ρ€Ρ…Ρƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: int m_p[4];

ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c

#pragma endregion private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) < this->Text = «Π ΠΈΡΡƒΠ΅ΠΌ Π›ΠΈΠ½ΠΈΡŽ»; button1->Text = «Π ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ»; > private: System::Void button1_Click(System::Object^ sender, System::EventArgs^ e) < m_p[1] = Convert::ToInt32(textBox1->Text); m_p[2] = Convert::ToInt32(textBox2->Text); m_p[3] = Convert::ToInt32(textBox3->Text); m_p[4] = Convert::ToInt32(textBox4->Text); pictureBox1->Refresh(); > private: System::Void pictureBox1_Paint(System::Object^ sender, System::Windows::Forms::PaintEventArgs^ e) < // РисуСм линию e->Graphics->DrawLine(System::Drawing::Pens::Green, m_p[1], m_p[2], m_p[3], m_p[4]); > >; >

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms cΠ‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠΊ >>

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ рисования Π² C#. Β«ΠšΠΎΡ€Π°Π±Π»ΠΈΠΊΒ»

НарисуСм ΠΊΠΎΡ€Π°Π±Π»ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°ΠΊΠΎΠΉ:

ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c

Π’Π°ΡˆΠΈ дСйствия:

1) Π‘ΠΎΠ·Π΄Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Windows Forms, namespace = Β«ΠšΠΎΡ€Π°Π±Π»ΠΈΠΊΒ».
2) Π Π°Π·ΠΌΠ΅Ρ€ Ρ„ΠΎΡ€ΠΌΡ‹ Π·Π°Π΄Π°ΠΉΡ‚Π΅ 900Ρ…500, Π½Π° Π½Π΅ΠΉ размСститС Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ для рисования pictureBox1, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π΅Π³ΠΎ свойство Dock = Fill; (ΠΎΠ½ Π·Π°ΠΉΠΌΠ΅Ρ‚ всС пространство Ρ„ΠΎΡ€ΠΌΡ‹).
3) ΠšΠ»ΠΈΠΊΠ½ΡƒΠ² Π½Π° ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅, Π²Ρ‹ создадитС событиС pictureBox1.Click ΠΈ Ρ„ΠΎΡ€ΠΌΡƒ для ΠΌΠ΅Ρ‚ΠΎΠ΄Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ этого события pictureBox1_Click ();
4) НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ System.Drawing. НСнуТныС Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ (Π½ΡƒΠΆΠ½Ρ‹ всСго Ρ‚Ρ€ΠΈ: System, System.Windows.Forms ΠΈ System.Drawing).
5) Π’ ΠΎΠΊΠ½Π΅ ΠΊΠΎΠ΄Π° Ρ„Π°ΠΉΠ»Π° Form1.cs ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ тСкст:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ ΠΎΡΡ‚Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ события, Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ Π½Π°ΠΌΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ pictureBox1_Click ( ), для Ρ‡Π΅Π³ΠΎ вставим ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ с коммСнтариями:

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΡ‹ использовали ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ класса Graphics: FillRectangle(), FillPolygon(), FillPie() ΠΈ DrawEllipse(). НайдитС ΠΈΡ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ структуры Point; oΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹-кисти класса SolidBrush; ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-ΠΏΠ΅Ρ€ΠΎ класса Pen. Для рисования Π²ΠΎΠ»Π½ моря использовался Ρ†ΠΈΠΊΠ» while, для ΠΈΠ»Π»ΡŽΠΌΠΈΠ½Π°Ρ‚ΠΎΡ€ΠΎΠ² β€” Ρ†ΠΈΠΊΠ» for. Полигон задаСтся массивом Ρ‚ΠΎΡ‡Π΅ΠΊ для соСдинСния ΠΈΡ… сплошной Π»ΠΎΠΌΠ°Π½ΠΎΠΉ.
И всС, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ. ΠšΠ»ΠΈΠΊΠ½ΡƒΠ² Π² ΠΎΠΊΠ½Π΅, смоТСм ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ наш ΠΊΠΎΡ€Π°Π±Π»ΠΈΠΊ:
ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c

4 коммСнтария ΠΊ β€œΠŸΡ€ΠΈΠΌΠ΅Ρ€ рисования Π² C#. Β«ΠšΠΎΡ€Π°Π±Π»ΠΈΠΊΒ»β€

это дСлаСтся Ρ‡Π΅Ρ€Π΅Π· класс?

Π”Π°. ΠžΠ±ΡŠΠ΅ΠΊΡ‚ g класса Graphics ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ Π² ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ pictureBox1_Click(), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π·Π°Π΄Π°Π½ ΠΊΠ°ΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄ Form1.
РисованиС (послС ΠΊΠ»ΠΈΠΊΠ° Π½Π° pictureBox1) состоит Π² Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² класса Graphics.

А Ρ‡Ρ‚ΠΎ Π·Π° namespace = Β«ΠšΠΎΡ€Π°Π±Π»ΠΈΠΊΒ».

Имя ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любоС, Π΄Π°ΠΆΠ΅ записанноС русскими Π±ΡƒΠΊΠ²Π°ΠΌΠΈ. Π’Ρ‹, ΠΊΠΎΠ³Π΄Π° создаСтС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ ΠΈ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚Π΅ Π΅Π³ΠΎ шаблон, Π² ΠΎΠΊΠ½Π΅ Β«ΠΠ°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Β» вмСсто ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ WindowsFormsApp1 (ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ) Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ любоС Π΄Ρ€ΡƒΠ³ΠΎΠ΅ допустимоС имя, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ОкСанский_Π»Π°ΠΉΠ½Π΅Ρ€, ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅, Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ, ΠΏΡƒΡ‚ΡŒ ΠΊ Π’Π°ΡˆΠ΅ΠΌΡƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ, ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π‘ΠΎΠ·Π΄Π°Ρ‚ΡŒΒ» (ΠΏΡ€ΠΎΠ΅ΠΊΡ‚). Π’Π΅ΡΡŒ Π’Π°Ρˆ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π² ΠΏΠ°ΠΏΠΊΠ΅ ОкСанский_Π»Π°ΠΉΠ½Π΅Ρ€. Π”ΡƒΠΌΠ°ΡŽ, Ρ‡Ρ‚ΠΎ это ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Π― Ρ‡Π°Ρ‰Π΅ имя пространства ΠΈΠΌΠ΅Π½ задаю двумя-трСмя английскими словами, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ocean_Liner. Π’ΠΎ Π΅ΡΡ‚ΡŒ Ρƒ Вас полная свобода Π²Ρ‹Π±ΠΎΡ€Π°, ΠΏΠΈΡˆΠΈΡ‚Π΅, ΠΊΠ°ΠΊ Π’Π°ΠΌ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Π²Π°ΠΆΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° Π½Π°Ρ…ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π² этом namespace ΠΈΠ»ΠΈ Π±Ρ‹Π»ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Ρ‡Π΅Ρ€Π΅Π· Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ using (ΠΊΠ°ΠΊ System ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅).

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

РисованиС Π² Form гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€

НуТно Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² Form Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ„ΠΈΠ³ΡƒΡ€Ρƒ. Π― Π΄ΡƒΠΌΠ°ΡŽ Ρ‡Ρ‚ΠΎ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½ΡƒΠΆΠ½ΠΎ Π½Π° ΠΊΠ°ΠΊΠΎΠΌ-Ρ‚ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π΅ я взял PictureBox ΠΈ попытался Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Π½Π΅ΠΌ, Π½ΠΎ Π²Ρ‹ΡˆΠ»ΠΈ ошибки, ΠΌΠΎΠΆΠ΅Ρ‚ я Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ сдСлал ΠΈ Π΅ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ для рисования Π½Π° Π½ΠΈΡ…? И Π΅Ρ‰Π΅ послС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ я нарисовал ΠΏΡ€ΠΎΠ±Π½ΡƒΡŽ линию ΠΎΠ½Π° Ρ‡Π΅Ρ€Π΅Π· нСсколько сСкунд исчСзла, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Ρ‚ΠΎΠ±Ρ‹ нарисованный ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π½Π΅ исчСзал.

РисованиС гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€
ΠΊΠ°ΠΊ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΡ‡Π΅ΡΠΊΡƒΡŽ Ρ„ΠΈΠ³ΡƒΡ€Ρƒ?

РисованиС гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€ толстой Π»ΠΈΠ½ΠΈΠ΅ΠΉ
Π”ΠΎΠ±Ρ€Ρ‹ΠΉ дСнь, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ. Π ΠΈΡΡƒΡŽ Π΄ΠΎΡ€ΠΎΠΆΠ½Ρ‹Π΅ Π·Π½Π°ΠΊΠΈ Π² малСньком Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ ΠΈ столкнулся со.

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€ Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅
Π”ΠΎΠ±Ρ€Ρ‹ΠΉ дСнь. ΠŸΠΎΠ΄ΡΠΊΠ°ΠΆΠΈΡ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΡƒ которая способна Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ гСомСтричСскиС Ρ„ΠΈΠ³ΡƒΡ€Ρ‹.

ΠŸΡ€ΠΈΠ²ΠΎΠΆΡƒ ΠΊΠΎΠ΄ построСния, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, эллипса. Аналогично ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ ΠΈ ΠΏΡ€.

Π‘Π»ΡƒΡˆΠ°ΠΉΡ‚Π΅ ViterAlex, ΠΎΠ½ Π΄Π΅Π»ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚

Ошибка Π² Ρ‚Π²ΠΎΠ΅ΠΌ ΠΊΠΎΠ΄Π΅, Ρ‡Ρ‚ΠΎ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½Π° Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Π° Π»ΠΈΠ½ΠΈΠΈ.
БСйчас Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ исчСзнСт.

На Ρ„ΠΎΡ€ΠΌΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ PictureBox ΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· 1 ΠΌΠΈΠ½ΡƒΡ‚Ρƒ

Π”Π° Ρƒ мСня курсовая Π° Ρ‚Π°ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° сСром Ρ„ΠΎΠ½Π΅ ΠΈ Π±Π΅Π»Ρ‹ΠΉ экранчик Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ происходит рисованиС. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π² свойствах PictureBox Π·Π°Π΄Π°Ρ‚ΡŒ Π±Π΅Π»Ρ‹ΠΉ Ρ†Π²Π΅Ρ‚, Π½ΠΎ Ρ…ΠΎΡ‚Π΅Π» всС ΠΏΠΎ ΡƒΠΌΠ½ΠΎΠΌΡƒ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ΄ΠΎΠΌ Π° Π½Π΅ настройками Ρ†Π²Π΅Ρ‚ устанавливался.

Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ Ρ‡Π΅Ρ€Π΅Π· 3 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹
Π― понимаю Ρ‡Ρ‚ΠΎ Ρ€ΠΈΡΡƒΡŽ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅, Π½ΠΎ для Π½Π°Ρ‡Π°Π»Π° я Ρ…ΠΎΡ‚Π΅Π» просто ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΎΡΡŒ.

Π”Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΈ Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ заливая ΠΎΠ΄Π½Ρƒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΏΠΎΠ²Π΅Ρ€Ρ… Π΄Ρ€ΡƒΠ³ΠΎΠΉ.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ этот ΠΊΠΎΠ΄ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?

ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms cΠšΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€ для гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€
Π”ΠΎΠ±Ρ€ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ суток, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ Π»ΠΈΠ±ΠΎ Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ список.

ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms c. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π² windows forms cΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² построСниС рисунков гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€
ВсСм ΠΏΡ€ΠΈΠ²Π΅Ρ‚! ΠŸΠΎΠΌΠΎΠ³ΠΈΡ‚Π΅ ΡΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ которая ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ строит ΠΎΡ‚Ρ€Π΅Π·ΠΎΠΊ ΠΏΠΎ Π·Π°Ρ€Π°Π½Π΅Π΅.

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€ для создания гСомСтричСских Ρ„ΠΈΠ³ΡƒΡ€
МоТно Π»ΠΈ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Ρ†Π΅Π»ΠΎΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ, созданному Π² конструкторС? РаньшС я создавала ΠΊΠΎΠ»ΡŒΡ†ΠΎ ΠΈΠ· 3.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ДвумСрная Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π½Π° C#, классы Graphics, Pen ΠΈ Brush

На ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ наглядно Π²ΠΈΠ΄Π½Ρ‹ прСимущСства ООП, смысл использования классов, ΠΈΡ… ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² ΠΈ свойств. Добавляя Π² пространство ΠΈΠΌΠ΅Π½ своСго ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚Π΅ сразу Π½Π°Π±ΠΎΡ€ инструмСнтов, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… для Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ. Π­Ρ‚ΠΎ графичСскиС ΠΏΡ€ΠΈΠΌΠΈΡ‚ΠΈΠ²Ρ‹ (Π»ΠΈΠ½ΠΈΠΈ, ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, эллипсы ΠΈ Ρ‚.ΠΏ.), ΠΏΠ΅Ρ€ΠΎ для чСрчСния, ΠΊΠΈΡΡ‚ΡŒ для закраски ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ².

2D-Π³Ρ€Π°Ρ„ΠΈΠΊΠ° дСлится, ΠΊΠ°ΠΊ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅, Π½Π° Ρ€Π°ΡΡ‚Ρ€ΠΎΠ²ΡƒΡŽ ΠΈ Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΡƒΡŽ. РастровоС ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ β€” это Π½Π°Π±ΠΎΡ€ Ρ†Π²Π΅Ρ‚Π½Ρ‹Ρ… пиксСлСй, Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… Π² ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΎΠΉ области, хранящихся Π² Ρ„Π°ΠΉΠ»Π°Ρ… *.bmp, *.jpg, *.png ΠΈ Ρ‚.ΠΏ. Π‘Π°ΠΌΡ‹ΠΉ простой растровый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ β€” ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Paint. ВСкторная Π³Ρ€Π°Ρ„ΠΈΠΊΠ° Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ экономнСС (ΠΏΠΎ объСмам памяти) растровой. Π’Π°ΠΊ для рисования ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° достаточно Π·Π°Π΄Π°Ρ‚ΡŒ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ Π΄Π²ΡƒΡ… Ρ‚ΠΎΡ‡Π΅ΠΊ (Π»Π΅Π²ΠΎΠ³ΠΎ Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ ΠΈ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ½Π΅Π³ΠΎ ΡƒΠ³Π»ΠΎΠ²) ΠΈ Ρ†Π²Π΅Ρ‚ ΠΈ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ Π»ΠΈΠ½ΠΈΠΈ. Π’ этом Ρ€Π°Π·Π΄Π΅Π»Π΅ Π² основном рассмотрим ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ Π²Π΅ΠΊΡ‚ΠΎΡ€Π½ΠΎΠΉ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ.

Класс Graphics прСдоставляСт ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ рисования Π½Π° устройствС отобраТСния (Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹ β€” графичСский контСкст, «холст»). ΠžΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠΌΡΡ сразу, Π½Π° Ρ‡Π΅ΠΌ ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ. Π”Π°Π»Π΅Π΅ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΎΠ½ обозначаСтся ΠΊΠ°ΠΊ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ g.

Бпособы задания «холста»

1. ГрафичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ β€” «холст» для рисования Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Form1 (ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ this) ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΠ΄Π½ΠΈΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€ΠΎΠΌ:
Graphics g = this.CreateGraphics();
ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅. Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ стандартным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ
Graphics g = new Graphics();
ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚-холст Π½Π΅ удаСтся.
На этом ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Π΅ гСнСрируСтся ошибка:
Для Ρ‚ΠΈΠΏΠ° Β«System.Drawing.GraphicsΒ» Π½Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ конструктор.

2. Π•Ρ‰Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ задания графичСского контСкста Π½Π° Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠΌ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π΅ PictureBox (ящик для рисования) Ρ‡Π΅Ρ€Π΅Π· растровый ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ класса Bitmap. Π’ классС Form1 Π·Π°Π΄Π°Π΄ΠΈΠΌ Π΄Π²Π° ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°:
Graphics g; // графичСский ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ β€” Π½Π΅ΠΊΠΈΠΉ холст
Bitmap buf; // Π±ΡƒΡ„Π΅Ρ€ для Bitmap-изобраТСния
Π’ конструктор Form1() Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹:
buf = new Bitmap(pictureBox1.Width, pictureBox1.Height); // с Ρ€Π°Π·ΠΌΠ΅Ρ€Π°ΠΌΠΈ
g = Graphics.FromImage(buf); // инициализация g

3. Π’ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠ΅, ΠΈΠ½ΠΎΠ³Π΄Π° (Ссли всС графичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π²Π½ΡƒΡ‚Ρ€ΠΈ ΠΎΠ΄Π½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ) эти Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ строки ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ‹ ΠΎΠ΄Π½ΠΎΠΉ строкой:
Graphics g = Graphics.FromImage(new Bitmap(pictureBox1.Width, pictureBox1.Height));
ПослС этого ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ Ρ„ΠΎΠ½ холста Π±Π΅Π»Ρ‹ΠΌ:
g.Clear(Color.White);

4. Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ задания «холста» Π½Π° Ρ„ΠΎΡ€ΠΌΠ΅ Ρ‡Π΅Ρ€Π΅Π· дСскриптор ΠΎΠΊΠ½Π°:
Graphics g = Graphics.FromHwnd(this.Handle);
Π”Π°Π»Π΅Π΅ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ΡΡ эти способы.

ΠžΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ Π΄Ρ€ΡƒΠ³ΠΈΡ… классов ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ System.Drawing

Π’Π°ΠΊΠΈΠ΅ классы, ΠΊΠ°ΠΊ Rectangle (ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ) ΠΈ Point (Ρ‚ΠΎΡ‡ΠΊΠ°) ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚ элСмСнты GDI+. ΠžΡ‚ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Point Π²ΠΎΠΎΠ±Ρ‰Π΅ Ρ‚ΠΎ являСтся структурой (struct) с полями x,y. Π­Ρ‚ΠΎ ΡƒΡ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠ΅ нСсущСствСнно, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² C# структуры ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° классы, a инициализация ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°-структуры point ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ инициализация ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°-класса:
Point point= new Point();

Класс Pen (ΠΏΠ΅Ρ€ΠΎ) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для рисования Π»ΠΈΠ½ΠΈΠΉ ΠΈ ΠΊΡ€ΠΈΠ²Ρ‹Ρ…, Π° классы, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΎΡ‚ класса Brush (ΠΊΠΈΡΡ‚ΡŒ) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для закраски Π·Π°ΠΌΠΊΠ½ΡƒΡ‚Ρ‹Ρ… ΠΊΠΎΠ½Ρ‚ΡƒΡ€ΠΎΠ² (см. Π½ΠΈΠΆΠ΅).

Класс GraphicsPath позволяСт Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ соСдинСнных Π»ΠΈΠ½ΠΈΠΉ ΠΈ ΠΊΡ€ΠΈΠ²Ρ‹Ρ…, класс Region описываСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ графичСской Ρ„ΠΎΡ€ΠΌΡ‹, состоящСй ΠΈΠ· ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ² ΠΈ ΠΊΠΎΠ½Ρ‚ΡƒΡ€ΠΎΠ².

Класс Image – абстрактный Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс прСдоставляСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности для ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Ρ… классов Bitmap ΠΈ Metafile. Bitmap ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΏΠΈΠΊΡΠ΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ изобраТСниями (см. Π²Ρ‹ΡˆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€). Metafile опрСдСляСт графичСский ΠΌΠ΅Ρ‚Π°Ρ„Π°ΠΉΠ», содСрТащий записи, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ графичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ записаны (созданы) ΠΈ воспроизвСдСны (отобраТаСтся). Π­Ρ‚ΠΎΡ‚ класс Π½Π΅ наслСдуСтся.

Класс Graphics

Он инкапсулируСт ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ рисования GDI+. Π­Ρ‚ΠΎΡ‚ класс Π½Π΅ наслСдуСтся. ΠœΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² Π² этом классС ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство, поэтому сначала прСдставим ΠΈΡ… Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅, Π° Π·Π°Ρ‚Π΅ΠΌ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½ΠΈΡ… с ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ ΠΈ пояснСниями.
Π’ Ρ‚Ρ€Π΅Ρ‚ΡŒΠ΅ΠΌ столбцС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ указываСтся число ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΎΠΊ ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‰ΠΈΡ…ΡΡ Π½Π°Π±ΠΎΡ€ΠΎΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΡƒΡŽ подсказку IntelliSense для Π²Ρ‹Π±ΠΎΡ€Π° Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ Π’Π°ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°).

Имя ΠΌΠ΅Ρ‚ΠΎΠ΄Π°ΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅Π§ΠΈΡΠ»ΠΎ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΎΠΊ
Clear(Color)ΠžΡ‡ΠΈΡ‰Π°Π΅Ρ‚ всю ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ рисования ΠΈ выполняСт Π·Π°Π»ΠΈΠ²ΠΊΡƒ повСрхности ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ Ρ„ΠΎΠ½Π°.1
CopyFromScreen(Point, Point, Size)ВыполняСт ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Ρ†Π²Π΅Ρ‚Π΅, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΎΠΉ области пиксСлСй, Π±Π»ΠΎΠΊΠ°ΠΌΠΈ Π±ΠΈΡ‚ΠΎΠ² с экрана Π½Π° ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ рисования ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Graphics.4
Dispose()ΠžΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ‚ всС рСсурсы, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ Graphics.1
DrawArc(Pen, Rectangle, Single, Single)РисуСт Π΄ΡƒΠ³Ρƒ, которая являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ эллипса, Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ структурой Rectangle.4
DrawBezier(Pen, Point, Point, Point, Point)РисуСт ΠΊΡ€ΠΈΠ²ΡƒΡŽ Π‘Π΅Π·ΡŒΠ΅, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌΡƒΡŽ Ρ‡Π΅Ρ‚Ρ‹Ρ€ΡŒΠΌΡ структурами Point.3
DrawBeziers(Pen, Point[])РисуСт нСсколько (N) ΠΊΡ€ΠΈΠ²Ρ‹Ρ… Π‘Π΅Π·ΡŒΠ΅, опрСдСляСмых массивом ΠΈΠ· (3N+1) структур Point.2
DrawCloseCurve(Pen, Point[ ])РисуСт Π·Π°ΠΌΠΊΠ½ΡƒΡ‚Ρ‹ΠΉ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Ρ‹ΠΉ сплайн4
DrawEllipse(Pen, Rectangle)РисуСт эллипс4
DrawIcon(Icon, Rectangle)РисуСт Π·Π½Π°Ρ‡ΠΎΠΊ2
DrawImage(Image image, int x, int y)РисуСт Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ image, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΅Π³ΠΎ фактичСский Ρ€Π°Π·ΠΌΠ΅Ρ€ Π² мСстС с ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Π°ΠΌΠΈ (x,y)30
DrawLine(Pen, Point, Point)ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ линию, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΡƒΡŽ Π΄Π²Π΅ структуры Point.4
DrawLines(Pen, Point[ ])РисуСт Π½Π°Π±ΠΎΡ€ сСгмСнтов Π»ΠΈΠ½ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ массив структур Point.2
DrawPath(Pen, gp)РисуСт ΠΏΠ΅Ρ€ΠΎΠΌ Pen ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ GraphicsPath gp.1
DrawPie(Pen, Rectangle, Single, Single)РисуСт сСктор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСтся эллипсом, Π·Π°Π΄Π°Π½Π½Ρ‹ΠΌ структурой Rectangle ΠΈ двумя Ρ€Π°Π΄ΠΈΠ°Π»tΡŒΠ½Ρ‹ΠΌΠΈ линиями.4
DrawPolygon(Pen, Point[])РисуСт ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, опрСдСляСмый массивом структур Point.2
DrawRectangle(Pen, Rectangle)РисуСт ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ, опрСдСляСмый структурой Rectangle.3
DrawRectangles(Pen, Rectangle[])РисуСт Π½Π°Π±ΠΎΡ€ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠ², опрСдСляСмых структурами Rectangle.2
DrawString(String, Font, Brush, PointF)Π‘ΠΎΠ·Π΄Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅ΠΌΡƒΡŽ Ρ‚Π΅ΠΊΡΡ‚ΠΎΠ²ΡƒΡŽ строку Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ мСстС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ опрСдСляСмых ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Brush ΠΈ Font.6
Equals(Object)ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, Ρ€Π°Π²Π΅Π½ Π»ΠΈ Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌΡƒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ. (УнаслСдовано ΠΎΡ‚ Object.)1
ExcludeClip(Rectangle)ΠžΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ‚ Π²Ρ‹Ρ€Π΅Π·Π°Π½Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Graphics, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· Π½Π΅Π΅ Ρ‡Π°ΡΡ‚ΡŒ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌΡƒΡŽ структурой Rectangle.1
ExcludeClip(Region)ΠžΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ‚ Π²Ρ‹Ρ€Π΅Π·Π°Π½Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Graphics, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΈΠ· Π½Π΅Π΅ Ρ‡Π°ΡΡ‚ΡŒ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅ΠΌΡƒΡŽ структурой Region.1
FillClosedCurve(Brush, Point[])ЗаполняСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π·Π°ΠΌΠΊΠ½ΡƒΡ‚ΠΎΠΉ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠΉ ΠΊΡ€ΠΈΠ²ΠΎΠΉ, опрСдСляСмой массивом структур Point.6
FillEllipse(Brush, Rectangle)ЗаполняСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ эллипса, опрСдСляСмого ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π΄Π°Π½ структурой Rectangle.4
FillPath(Brush, GraphicsPath)ЗаполняСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° GraphicsPath.1
FillPie(Brush, Rectangle, Single, Single)ЗаполняСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ сСктора, опрСдСляСмого эллипсом, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π΄Π°Π½ структурой RectangleF, ΠΈ двумя Ρ€Π°Π΄ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ линиями.3
FillPolygon(Brush, Point[])ЗаполняСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°, опрСдСляСмого массивом Ρ‚ΠΎΡ‡Π΅ΠΊ, Π·Π°Π΄Π°Π½Π½Ρ‹Ρ… структурами Point.4
FillRectangle(Brush, Rectangle)ЗаполняСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°, опрСдСляСмого структурой Rectangle.4
FillRegion(Brush, Region)ЗаполняСт Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Region.1
Flush()Π’Ρ‹Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ всСх ΠΎΡ‚Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… графичСских ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ ΠΈ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ возвращаСтся, Π½Π΅ доТидаясь ΠΈΡ… окончания.2
IntersectClip(Region)ΠžΠ±Π½ΠΎΠ²Π»ΡΠ΅Ρ‚ Π²Ρ‹Ρ€Π΅Π·Π°Π½Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π² Π½Π΅Π΅ пСрСсСчСниС Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Π²Ρ‹Ρ€Π΅Π·Π°Π½Π½ΠΎΠΉ области ΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ структуры3
ResetClip()БбрасываСт Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ g, дСлая Π΅Π΅ бСсконСчной1

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ Π΅Ρ‰Π΅ ΠΎ Π΄Π²ΡƒΡ… классах.

Класс Pen

Класс Pen опрСдСляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для рисования прямых Π»ΠΈΠ½ΠΈΠΉ ΠΈ ΠΊΡ€ΠΈΠ²Ρ‹Ρ…. Π­Ρ‚ΠΎΡ‚ класс Π½Π΅ наслСдуСтся. ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€Ρ‹ класса (Ρ‚ΠΎΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ²):
1) Pen(Color) ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ экзСмпляр класса Pen с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ.
2) Pen(Color, Single) ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ экзСмпляр класса Pen с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌΠΈ свойствами Color ΠΈ Width. (Width β€” устанавливаСт ΡˆΠΈΡ€ΠΈΠ½Ρƒ ΠΏΠ΅Ρ€Π° Pen, Π² Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Graphics, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ для рисования
НапримСр:
Pen redPen = new Pen(Color.Red); // Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Π° ΠΏΠ΅Ρ€Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ 1 пиксСль
ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ green
Color green = Color.Green;
Pen greenPen = new Pen(green, 4.5f);
МоТно Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π±Π΅Π· указания явного ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π° (ΠΏΡ€ΠΈΠΌΠ΅Ρ€ создания динамичСского ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° β€” ΠΏΠ΅Ρ€Π°):
g.DrawRectangle(new Pen(Color.Red, 3), r);
Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для рисования ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° r красным ΠΏΠ΅Ρ€ΠΎΠΌ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½ΠΎΠΉ 3 пиксСля, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ графичСский контСкст («холст») g.

Класс Brush

Класс Brush опрСдСляСт ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Π·Π°Π»ΠΈΠ²ΠΊΠΈ Π²Π½ΡƒΡ‚Ρ€ΠΈ графичСских Ρ„ΠΈΠ³ΡƒΡ€, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, эллипсы, ΠΊΡ€ΡƒΠ³ΠΈ, ΠΌΠ½ΠΎΠ³ΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ ΠΈ Π΄ΠΎΡ€ΠΎΠΆΠΊΠΈ. Π­Ρ‚ΠΎ абстрактный Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ класс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½. Для создания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Β«ΠΊΠΈΡΡ‚ΡŒΒ» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ классы, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹Π΅ ΠΎΡ‚ Brush, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ SolidBrush, TextureBrush ΠΈ LinearGradientBrush, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:
SolidBrush br = new SolidBrush(Color.Aqua);
g.FillRectangle(br, r); // закраска ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ° r Π½Π° «холстС» g
Или Π±Π΅Π· явного объявлСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Β«ΠΊΠΈΡΡ‚ΡŒΒ» br:
g.FillRectangle(new SolidBrush(Color.Red), r);

Для ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ привыкания ΠΊ ΡΡ‚ΠΈΠ»ΡŽ ООП Π² Π³Ρ€Π°Ρ„ΠΈΠΊΠ΅ рассмотрим ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ рисования.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠžΡ‚Ρ€ΠΈΡΠΎΠ²ΠΊΠ° элСмСнтов управлСния Windows Forms

ΠžΡ‚Ρ€ΠΈΡΠΎΠ²ΠΊΠ° ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ процСсс создания Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ прСдставлСния Π½Π° экранС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Windows Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ… для отрисовки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ GDI (новая Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° Windows graphics). УправляСмыС классы, ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅ доступ ΠΊ GDI, находятся Π² System.Drawing пространствС ΠΈΠΌΠ΅Π½ ΠΈ Π΅Π³ΠΎ подпространствах ΠΈΠΌΠ΅Π½.

ΠŸΡ€ΠΈ отрисовкС элСмСнта управлСния ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ элСмСнты:

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΈ рисования, прСдоставляСмыС Π±Π°Π·ΠΎΠ²Ρ‹ΠΌ классом System.Windows.Forms.Control.

ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ элСмСнты Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ графичСских ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² GDI.

ГСомСтрия области рисования.

ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° высвобоТдСния графичСских рСсурсов.

Π€ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности рисования, прСдоставляСмыС элСмСнтом управлСния

Класс Π΄Π°Π½Π½Ρ‹Ρ… событий для Paint события, PaintEventArgs содСрТит Π΄Π°Π½Π½Ρ‹Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для рисования элСмСнта управлСния β€” ΠΌΠ°Ρ€ΠΊΠ΅Ρ€ графичСского ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠ°, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ Ρ€Π΅Π³ΠΈΠΎΠ½ для рисования. Π­Ρ‚ΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ ΠΏΠΎΠΊΠ°Π·Π°Π½Ρ‹ ΠΆΠΈΡ€Π½Ρ‹ΠΌ ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠΌ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ ΠΊΠΎΠ΄Π°.

Graphics β€” Π­Ρ‚ΠΎ управляСмый класс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ инкапсулируСт Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ возмоТности рисования, ΠΊΠ°ΠΊ описано Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΎ GDI Π΄Π°Π»Π΅Π΅ Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅. ClipRectangle являСтся экзСмпляром структуры Rectangle ΠΈ опрСдСляСт Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ элСмСнт управлСния. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ элСмСнта управлСния ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ClipRectangle с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ClipRectangle свойства элСмСнта управлСния, ΠΊΠ°ΠΊ описано Π² обсуТдСнии Π³Π΅ΠΎΠΌΠ΅Ρ‚Ρ€ΠΈΠΈ Π΄Π°Π»Π΅Π΅ Π² этом Ρ€Π°Π·Π΄Π΅Π»Π΅.

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ управлСния Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ отрисовки ΠΏΡƒΡ‚Π΅ΠΌ пСрСопрСдСлСния ΠΌΠ΅Ρ‚ΠΎΠ΄Π° OnPaint, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΠ½ наслСдуСт ΠΎΡ‚ Control. OnPaint ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ доступ ΠΊ графичСскому ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρƒ ΠΈ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΡƒ для рисования с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ свойств Graphics ΠΈ ClipRectangle экзСмпляра PaintEventArgs, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π² Π½Π΅Π³ΠΎ.

Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ Control класс опрСдСляСт Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΌΠ΅Ρ‚ΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΡƒΠ΄ΠΎΠ±Π΅Π½ для рисования β€” OnPaintBackground ΠΌΠ΅Ρ‚ΠΎΠ΄.

OnPaintBackground Π—Π°ΠΊΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Ρ„ΠΎΠ½ (ΠΈ, Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ„ΠΎΡ€ΠΌΡƒ) ΠΎΠΊΠ½Π° ΠΈ Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ быстрым, Π² Ρ‚ΠΎ ΠΆΠ΅ врСмя OnPaint рисуя Π΄Π΅Ρ‚Π°Π»ΠΈ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΌΠ΅Π΄Π»Π΅Π½Π½Π΅Π΅, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ запросы рисования ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ Π² ΠΎΠ΄Π½ΠΎ Paint событиС, ΠΎΡ…Π²Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ всС области, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ. ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ OnPaintBackground, Ссли, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π½ΡƒΠΆΠ½ΠΎ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π³Ρ€Π°Π΄ΠΈΠ΅Π½Ρ‚Π½Ρ‹ΠΉ Ρ„ΠΎΠ½ для элСмСнта управлСния.

ΠžΡΠ½ΠΎΠ²Ρ‹ GDI+

GraphicsКласс прСдоставляСт ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для рисования Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ„ΠΈΠ³ΡƒΡ€, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΊΡ€ΡƒΠ³ΠΈ, Ρ‚Ρ€Π΅ΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, Π΄ΡƒΠ³ΠΈ ΠΈ эллипсы, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для отобраТСния тСкста. System.DrawingΠŸΡ€ΠΎΡΡ‚Ρ€Π°Π½ΡΡ‚Π²ΠΎ ΠΈΠΌΠ΅Π½ ΠΈ Π΅Π³ΠΎ подпространства ΠΈΠΌΠ΅Π½ содСрТат классы, ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ графичСскиС элСмСнты, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Ρ„ΠΈΠ³ΡƒΡ€Ρ‹ (ΠΊΡ€ΡƒΠ³ΠΈ, ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊΠΈ, Π΄ΡƒΠ³ΠΈ ΠΈ Π΄Ρ€.), Ρ†Π²Π΅Ρ‚Π°, ΡˆΡ€ΠΈΡ„Ρ‚Ρ‹, кисти ΠΈ Ρ‚. Π΄. Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ свСдСния ΠΎ GDI см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ИспользованиС управляСмых графичСских классов. основныС свСдСния ΠΎ GDI Ρ‚Π°ΠΊΠΆΠ΅ описаны Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ элСмСнт управлСния Windows Forms, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ Ρ…ΠΎΠ΄ выполнСния.

ГСомСтрия области рисования

ClientRectangleБвойство элСмСнта управлСния ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΡƒΡŽ для элСмСнта управлСния Π½Π° экранС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π° ClipRectangle свойство ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° β€” PaintEventArgs ΠΎΠ±Π»Π°ΡΡ‚ΡŒ, которая Π½Π° самом Π΄Π΅Π»Π΅ ΠΎΠΊΡ€Π°ΡˆΠ΅Π½Π°. (ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡Ρ‚ΠΎ рисованиС выполняСтся Π² Paint ΠΌΠ΅Ρ‚ΠΎΠ΄Π΅ события, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ PaintEventArgs экзСмпляр Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°). Π­Π»Π΅ΠΌΠ΅Π½Ρ‚Ρƒ управлСния ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π·Π°ΠΊΡ€Π°ΡΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ Π΅Π³ΠΎ доступной области, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π² случаС, ΠΊΠΎΠ³Π΄Π° измСняСтся нСбольшой Ρ€Π°Π·Π΄Π΅Π» элСмСнта управлСния. Π’ Ρ‚Π°ΠΊΠΈΡ… ситуациях Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ элСмСнта управлСния Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Ρ‡ΠΈΡΠ»ΠΈΡ‚ΡŒ фактичСский ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΈΠΊ для рисования ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π² Invalidate. ΠŸΠ΅Ρ€Π΅Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹Π΅ вСрсии Invalidate, ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠ΅ Rectangle ΠΈΠ»ΠΈ Region Π² качСствС Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ этот Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ для создания свойства ClipRectangle элСмСнта PaintEventArgs.

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ ΠΊΠΎΠ΄Π° ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ FlashTrackBar ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ элСмСнт управлСния выполняСт вычислСниС ΠΏΡ€ΡΠΌΠΎΡƒΠ³ΠΎΠ»ΡŒΠ½ΠΎΠΉ области для рисования. client ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ClipRectangle свойство. ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ элСмСнт управлСния Windows Forms, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ Ρ…ΠΎΠ΄ выполнСния.

ОсвобоТдСниС графичСских рСсурсов

Π’ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ ΠΊΠΎΠ΄Π° ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ FlashTrackBar ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ элСмСнт управлСния создаСт ΠΈ освобоТдаСт Brush рСсурс. ΠΏΠΎΠ»Π½Ρ‹ΠΉ исходный ΠΊΠΎΠ΄ см. Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ ΠΊΠ°ΠΊ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ элСмСнт управлСния Windows Forms, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‰ΠΈΠΉ Ρ…ΠΎΠ΄ выполнСния.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *