Advertisement
Guest User

DavidG

a guest
Jan 24th, 2011
864
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 5.60 KB | None | 0 0
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Linq;
  7. using System.Text;
  8. using System.Windows.Forms;
  9.  
  10.  
  11. namespace mePaint
  12. {
  13.     public partial class Form1 : Form
  14.     {
  15.  
  16.  
  17.         bool paint = false;
  18.  
  19.         SolidBrush color;
  20.  
  21.         bool fillActivated = false;
  22.         bool ellipseActivated = true;
  23.         bool rectangleActivated = false;
  24.  
  25.         bool colorDialogHasBeenUsed = false;
  26.  
  27.         Color colorSet = Color.Black;
  28.  
  29.         public Form1()
  30.         {
  31.             InitializeComponent();
  32.             this.WindowState = FormWindowState.Maximized;
  33.             color = new SolidBrush(Color.Black);
  34.             this.button3.Image = new Bitmap(button2.Image);
  35.         }
  36.         private void panel1_MouseUp(object sender, MouseEventArgs e)
  37.         {
  38.             paint = false;
  39.             if (colorDialogHasBeenUsed)
  40.             {
  41.                 color = new SolidBrush(colorSet);
  42.             }
  43.             else
  44.             {
  45.                 color = new SolidBrush(Color.Black);
  46.             }
  47.         }
  48.  
  49.         private void panel1_MouseMove(object sender, MouseEventArgs e)
  50.         {
  51.             if (e.Button == MouseButtons.Right)
  52.             {
  53.                 color = new SolidBrush(Color.White);
  54.             }
  55.             if (paint)
  56.             {
  57.                 if (ellipseActivated)
  58.                 {
  59.                     Graphics g = panel1.CreateGraphics();
  60.                     g.FillEllipse(color, e.X, e.Y, Convert.ToInt32(numericUpDown1.Value), Convert.ToInt32(numericUpDown1.Value));
  61.                 }
  62.                 else if (rectangleActivated)
  63.                 {
  64.                     Graphics g = panel1.CreateGraphics();
  65.                     g.FillRectangle(color, e.X, e.Y, Convert.ToInt32(numericUpDown1.Value), Convert.ToInt32(numericUpDown1.Value));
  66.                 }
  67.             }
  68.         }
  69.  
  70.         private void panel1_MouseDown(object sender, MouseEventArgs e)
  71.         {
  72.             paint = true;
  73.             if (fillActivated)
  74.                 {
  75.                     Graphics g = panel1.CreateGraphics();
  76.                     g.FillRectangle(color, 0,0,this.panel1.Width,this.panel1.Height);
  77.                 }
  78.         }
  79.  
  80.         private void button1_Click(object sender, EventArgs e)
  81.         {
  82.             ColorDialog colorDlg = new ColorDialog();
  83.             colorDlg.AllowFullOpen = true; ;
  84.             colorDlg.AnyColor = true;
  85.             colorDlg.SolidColorOnly = false;
  86.  
  87.             if (colorDlg.ShowDialog() == DialogResult.OK)
  88.             {
  89.                 color = new SolidBrush(colorDlg.Color);
  90.                 colorDialogHasBeenUsed = true;
  91.                 colorSet = colorDlg.Color;
  92.             }
  93.         }
  94.  
  95.         private void button2_Click(object sender, EventArgs e)
  96.         {
  97.             if (ellipseActivated)
  98.             {
  99.                 ellipseActivated = false;
  100.                 this.button3.Image = new Bitmap(button4.Image);
  101.             }
  102.             else
  103.             {
  104.                 ellipseActivated = true;
  105.                 this.button3.Image = new Bitmap(button2.Image);
  106.                 fillActivated = false;
  107.                 rectangleActivated = false;
  108.             }
  109.         }
  110.  
  111.         private void newToolStripMenuItem_Click(object sender, EventArgs e)
  112.         {
  113.             Form1 form1 = new Form1();
  114.             form1.Show();
  115.         }
  116.  
  117.         private void clearToolStripMenuItem1_Click(object sender, EventArgs e)
  118.         {
  119.             Graphics g1 = panel1.CreateGraphics();
  120.             g1.Clear(panel1.BackColor);
  121.         }
  122.  
  123.         private void button5_Click(object sender, EventArgs e)
  124.         {
  125.             if (rectangleActivated)
  126.             {
  127.                 rectangleActivated = false;
  128.                 this.button3.Image = new Bitmap(button4.Image);
  129.             }
  130.             else
  131.             {
  132.                 rectangleActivated = true;
  133.                 this.button3.Image = new Bitmap(button5.Image);
  134.                 fillActivated = false;
  135.                 ellipseActivated = false;
  136.             }
  137.         }
  138.  
  139.         private void paintAreaSizeToolStripMenuItem_Click(object sender, EventArgs e)
  140.         {
  141.             DefinePanelSize panelForm = new DefinePanelSize();
  142.             panelForm.ShowDialog();
  143.         }
  144.  
  145.         private void button6_Click(object sender, EventArgs e)
  146.         {
  147.             if (fillActivated)
  148.             {
  149.                 fillActivated = false;
  150.                 this.button3.Image = new Bitmap(button4.Image);
  151.             }
  152.             else
  153.             {
  154.                 fillActivated = true;
  155.                 this.button3.Image = new Bitmap(button6.Image);
  156.                 rectangleActivated = false;
  157.                 ellipseActivated = false;
  158.             }
  159.         }
  160.  
  161.         private void closeToolStripMenuItem_Click_1(object sender, EventArgs e)
  162.         {
  163.             this.Close();
  164.         }
  165.  
  166.         private void saveToolStripMenuItem_Click_1(object sender, EventArgs e)
  167.         {
  168.             SaveFileDialog saveFileDialog = new SaveFileDialog();
  169.  
  170.             saveFileDialog.DefaultExt = "bmp";
  171.             saveFileDialog.Filter = "Bitmap files|*.bmp";
  172.             if (saveFileDialog.ShowDialog() == DialogResult.OK)
  173.             {
  174.                 int width = panel1.Width;
  175.                 int height = panel1.Height;
  176.  
  177.                 Bitmap bitMap = new Bitmap(width, height);
  178.                 Rectangle rec = new Rectangle(0, 0, width, height);
  179.  
  180.                 panel1.DrawToBitmap(bitMap, rec);
  181.  
  182.                 bitMap.Save(saveFileDialog.FileName);
  183.             }
  184.         }
  185.     }
  186. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement