Kaydol:
Kayıt Yorumları
(
Atom
)
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; using System.Drawing.Drawing2D; namespace MouseGrafikCizme { public partial class Form1 : Form { Graphics graphic; private enum FormatEnum { Nokta = 0, Çizgi } FormatEnum lineFormat; bool draw = false; int pOldX = -1; int pOldY = -1; Bitmap drawing; public Form1() { InitializeComponent(); } private void panel1_MouseMove(object sender, MouseEventArgs e) { if (draw) { Graphics panel = Graphics.FromImage(drawing); Pen pen = new Pen(Color.Blue, 5); pen.EndCap = LineCap.Round; pen.StartCap = LineCap.Round; switch (lineFormat) { case FormatEnum.Nokta: panel.DrawLine(pen, e.X, e.Y, e.X+1, e.Y+1); panel1.CreateGraphics().DrawImageUnscaled(drawing, new Point(0, 0)); break; case FormatEnum.Çizgi: panel.DrawLine(pen, pOldX, pOldY, e.X, e.Y); panel1.CreateGraphics().DrawImageUnscaled(drawing, new Point(0, 0)); break; default: break; } } pOldX = e.X; pOldY = e.Y; } private void panel1_MouseDown(object sender, MouseEventArgs e) { // Eğer mouse sol butona basılmaya başlanmışsa çizmeye başla draw = true; pOldX = e.X; pOldY = e.Y; } private void panel1_MouseUp(object sender, MouseEventArgs e) { draw = false; } private void panel1_Paint(object sender, PaintEventArgs e) { e.Graphics.DrawImageUnscaled(drawing, new Point(0, 0)); } private void btnNokta_Click(object sender, EventArgs e) { lineFormat = FormatEnum.Nokta; } private void Form1_Load(object sender, EventArgs e) { lineFormat = FormatEnum.Nokta; drawing = new Bitmap(panel1.Width, panel1.Height, panel1.CreateGraphics()); Graphics.FromImage(drawing).Clear(Color.White); } private void btnCizgi_Click(object sender, EventArgs e) { lineFormat = FormatEnum.Çizgi; } } }
Hiç yorum yok :
Yorum Gönder