dibawah ini akan di jelaskan bagaimana cara membuat aplikasi sederhana menggunakan bahasa pemograman c# dengan Windows Form Application di visual studio 2012
ini cara nya, selahkan diikuti dan di kembangkan lagi
1. buka Visual studio 2012
2. pilih new project lalu Windows Forms Application, kasih judul dan oke
3. ambil tools apa saja yang akan kita gunakan di toolbox lalu tarik ke form1 anda
4. desain form1 seperti ini
x adalah garis horizontal dan y adalah garis vertikal,
L adalah panjang garis yang telah kita buat.
untuk warna kita memakai menggunakan color wheel dan juga ada color dialog
sedangkan line, elips, rectange dan clear, kita beri gambar yang dimasukkan dari background image.
5. jika sudah masukkan program ini
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.Runtime.InteropServices;
using System.Drawing.Imaging;
using System.IO;
using System.Threading.Tasks;
namespace Mypaint1
{
public partial class Form1 : Form
{
private Graphics objGrp; //objek graphic
public bool shouldPaint = false; //inisialisasi mulai gambar
public bool line, rectang, ellipse, pen;
private Pen penaAjaib = new Pen(Color.Black);
int X1, Y1, X2, Y2, X, Y,tebal;
double XY;
bool choose;
Color paintcolor;
public Form1()
{
InitializeComponent();
}
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
choose = true;
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
choose = false;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (choose)
{
Bitmap bmp = (Bitmap)pictureBox1.Image.Clone();
paintcolor = bmp.GetPixel(e.X, e.Y);
red.Value = paintcolor.R;//value trackbar warna merah
green.Value = paintcolor.G;//value trackbar warna green
blue.Value = paintcolor.B;//value trackbar warna biru
alpha.Value = paintcolor.A;//value trackbar warna alpha
redval.Text = paintcolor.R.ToString();//value label warna merah
greenval.Text = paintcolor.G.ToString();//value label warna merah
blueval.Text = paintcolor.B.ToString();//value label warna merah
alphaval.Text = paintcolor.A.ToString();//value label warna merah
pictureBox2.BackColor = paintcolor;
penaAjaib.Color = paintcolor;
button1.BackColor = paintcolor;
}
}
private void button1_Click(object sender, EventArgs e)
{
if (colorDialog1.ShowDialog() == DialogResult.OK)
{
button1.BackColor = colorDialog1.Color;
penaAjaib.Color = colorDialog1.Color;
pictureBox2.BackColor = colorDialog1.Color;
}
}
private void Form1_Load(object sender, EventArgs e)
{
objGrp = pictureBox3.CreateGraphics();
}
private void button2_Click(object sender, EventArgs e)
{
btnLine.BackColor = Color.Green;
btnLine.ForeColor = Color.White;
btnEllips.BackColor = Color.Empty;
btnEllips.ForeColor = Color.Empty;
btnRect.BackColor = Color.Empty;
btnRect.ForeColor = Color.Empty;
erase.BackColor = Color.Empty;
erase.ForeColor = Color.Empty;
line = true; rectang = false; ellipse = false; pen = false;
}
private void button3_Click(object sender, EventArgs e)
{
btnEllips.BackColor = Color.Green;
btnEllips.ForeColor = Color.White;
btnLine.BackColor = Color.Empty;
btnLine.ForeColor = Color.Empty;
btnRect.BackColor = Color.Empty;
btnRect.ForeColor = Color.Empty;
erase.BackColor = Color.Empty;
erase.ForeColor = Color.Empty;
ellipse = true; line = false; rectang = false; pen = false;
}
private void button4_Click(object sender, EventArgs e)
{
btnEllips.BackColor = Color.Empty;
btnEllips.ForeColor = Color.Empty;
btnLine.BackColor = Color.Empty;
btnLine.ForeColor = Color.Empty;
btnRect.BackColor = Color.Green;
btnRect.ForeColor = Color.White;
erase.BackColor = Color.Empty;
erase.ForeColor = Color.Empty;
rectang = true; ellipse = false; line = false; pen = false;
}
private void erase_Click(object sender, EventArgs e)
{
btnEllips.BackColor = Color.Empty;
btnEllips.ForeColor = Color.Empty;
btnLine.BackColor = Color.Empty;
btnLine.ForeColor = Color.Empty;
btnRect.BackColor = Color.Empty;
btnRect.ForeColor = Color.Empty;
erase.BackColor = Color.Green;
erase.ForeColor = Color.White;
rectang = false; ellipse = false; line = false; pen = true;
//penaAjaib.Color = Color.White;
}
private void pictureBox3_MouseDown(object sender, MouseEventArgs e)
{
this.Cursor = Cursors.Cross;//mengaktifkan kursor jenis cross
if (e.Button == MouseButtons.Left)
{
shouldPaint = true;
}
X1 = e.X;
Y1 = e.Y;
}
private void pictureBox3_MouseUp(object sender, MouseEventArgs e)
{
this.Cursor = Cursors.Default;//mengaktifkan kursor default
shouldPaint = false;
textBox1.Text = Convert.ToString(X2);
textBox2.Text = Convert.ToString(Y2);
XY = Math.Sqrt((X2 * X2) + (Y2 * Y2));
textBox3.Text = Convert.ToString(XY);
}
private void pictureBox3_MouseClick(object sender, MouseEventArgs e)
{
if (shouldPaint == true)
{
X = e.X;
Y = e.Y;
X2 = e.X - X1;
Y2 = Y1 - e.Y;
if (rectang == true)
{
objGrp.DrawRectangle(penaAjaib, X1, Y1, X2, -Y2);
}
if (ellipse == true)
{
objGrp.DrawEllipse(penaAjaib, X1, Y1, X2, -Y2);
}
if (line == true)
{
objGrp.DrawLine(penaAjaib, X1, Y1, e.X, e.Y);
}
//if (pen == true)
//{
// objGrp.FillEllipse(new SolidBrush(Color.White), X1, Y1, 4*tebal, 4*tebal);
//}
}
}
private void New_Click(object sender, EventArgs e)
{
pictureBox3.Refresh();
pictureBox3.Image = null;
}
private void Open_Click(object sender, EventArgs e)
{
OpenFileDialog o = new OpenFileDialog();
o.Filter = "Png files|*.png|jpeg files|*jpg|bitmaps|*.bmp";
if (o.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
pictureBox3.Image = (Image)Image.FromFile(o.FileName).Clone();
}
}
private void Save_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(pictureBox3.Width, pictureBox3.Height);
Graphics g = Graphics.FromImage(bmp);
Rectangle rect = pictureBox3.RectangleToScreen(pictureBox3.ClientRectangle);
g.CopyFromScreen(rect.Location, Point.Empty, pictureBox3.Size);
g.Dispose();
SaveFileDialog s = new SaveFileDialog();
s.Filter = "Png files|*.png|jpeg files|*jpg|bitmaps|*.bmp";
if (s.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (File.Exists(s.FileName))///untuk menyimpan file
{
File.Delete(s.FileName);
}
if (s.FileName.Contains(".jpg"))//simpan dengan format jpeg
{
bmp.Save(s.FileName, ImageFormat.Jpeg);
}
else if (s.FileName.Contains(".png"))//simpan dengan format png
{
bmp.Save(s.FileName, ImageFormat.Png);
}
else if (s.FileName.Contains(".bmp"))//simpan dengan format bmp
{
bmp.Save(s.FileName, ImageFormat.Bmp);
}
}
}
private void trackBar1_Scroll(object sender, EventArgs e)
{
tebal = trackBar1.Value;//tebal garis
penaAjaib.Width = tebal;
}
private void pictureBox3_MouseMove(object sender, MouseEventArgs e)
{
if (shouldPaint == true)
{
X = e.X;
Y = e.Y;
X2 = e.X - X1;
Y2 = Y1 - e.Y;
if (pen == true)
{
objGrp.FillEllipse(new SolidBrush(Color.White), 5 * tebal, 5 * tebal, 5 * tebal, 5 * tebal);
objGrp.FillEllipse(new SolidBrush(Color.White), e.X, e.Y, X2, Y2);
}
}
}
}
}
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.Runtime.InteropServices;
using System.Drawing.Imaging;
using System.IO;
using System.Threading.Tasks;
namespace Mypaint1
{
public partial class Form1 : Form
{
private Graphics objGrp; //objek graphic
public bool shouldPaint = false; //inisialisasi mulai gambar
public bool line, rectang, ellipse, pen;
private Pen penaAjaib = new Pen(Color.Black);
int X1, Y1, X2, Y2, X, Y,tebal;
double XY;
bool choose;
Color paintcolor;
public Form1()
{
InitializeComponent();
}
private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
{
choose = true;
}
private void pictureBox1_MouseUp(object sender, MouseEventArgs e)
{
choose = false;
}
private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
{
if (choose)
{
Bitmap bmp = (Bitmap)pictureBox1.Image.Clone();
paintcolor = bmp.GetPixel(e.X, e.Y);
red.Value = paintcolor.R;//value trackbar warna merah
green.Value = paintcolor.G;//value trackbar warna green
blue.Value = paintcolor.B;//value trackbar warna biru
alpha.Value = paintcolor.A;//value trackbar warna alpha
redval.Text = paintcolor.R.ToString();//value label warna merah
greenval.Text = paintcolor.G.ToString();//value label warna merah
blueval.Text = paintcolor.B.ToString();//value label warna merah
alphaval.Text = paintcolor.A.ToString();//value label warna merah
pictureBox2.BackColor = paintcolor;
penaAjaib.Color = paintcolor;
button1.BackColor = paintcolor;
}
}
private void button1_Click(object sender, EventArgs e)
{
if (colorDialog1.ShowDialog() == DialogResult.OK)
{
button1.BackColor = colorDialog1.Color;
penaAjaib.Color = colorDialog1.Color;
pictureBox2.BackColor = colorDialog1.Color;
}
}
private void Form1_Load(object sender, EventArgs e)
{
objGrp = pictureBox3.CreateGraphics();
}
private void button2_Click(object sender, EventArgs e)
{
btnLine.BackColor = Color.Green;
btnLine.ForeColor = Color.White;
btnEllips.BackColor = Color.Empty;
btnEllips.ForeColor = Color.Empty;
btnRect.BackColor = Color.Empty;
btnRect.ForeColor = Color.Empty;
erase.BackColor = Color.Empty;
erase.ForeColor = Color.Empty;
line = true; rectang = false; ellipse = false; pen = false;
}
private void button3_Click(object sender, EventArgs e)
{
btnEllips.BackColor = Color.Green;
btnEllips.ForeColor = Color.White;
btnLine.BackColor = Color.Empty;
btnLine.ForeColor = Color.Empty;
btnRect.BackColor = Color.Empty;
btnRect.ForeColor = Color.Empty;
erase.BackColor = Color.Empty;
erase.ForeColor = Color.Empty;
ellipse = true; line = false; rectang = false; pen = false;
}
private void button4_Click(object sender, EventArgs e)
{
btnEllips.BackColor = Color.Empty;
btnEllips.ForeColor = Color.Empty;
btnLine.BackColor = Color.Empty;
btnLine.ForeColor = Color.Empty;
btnRect.BackColor = Color.Green;
btnRect.ForeColor = Color.White;
erase.BackColor = Color.Empty;
erase.ForeColor = Color.Empty;
rectang = true; ellipse = false; line = false; pen = false;
}
private void erase_Click(object sender, EventArgs e)
{
btnEllips.BackColor = Color.Empty;
btnEllips.ForeColor = Color.Empty;
btnLine.BackColor = Color.Empty;
btnLine.ForeColor = Color.Empty;
btnRect.BackColor = Color.Empty;
btnRect.ForeColor = Color.Empty;
erase.BackColor = Color.Green;
erase.ForeColor = Color.White;
rectang = false; ellipse = false; line = false; pen = true;
//penaAjaib.Color = Color.White;
}
private void pictureBox3_MouseDown(object sender, MouseEventArgs e)
{
this.Cursor = Cursors.Cross;//mengaktifkan kursor jenis cross
if (e.Button == MouseButtons.Left)
{
shouldPaint = true;
}
X1 = e.X;
Y1 = e.Y;
}
private void pictureBox3_MouseUp(object sender, MouseEventArgs e)
{
this.Cursor = Cursors.Default;//mengaktifkan kursor default
shouldPaint = false;
textBox1.Text = Convert.ToString(X2);
textBox2.Text = Convert.ToString(Y2);
XY = Math.Sqrt((X2 * X2) + (Y2 * Y2));
textBox3.Text = Convert.ToString(XY);
}
private void pictureBox3_MouseClick(object sender, MouseEventArgs e)
{
if (shouldPaint == true)
{
X = e.X;
Y = e.Y;
X2 = e.X - X1;
Y2 = Y1 - e.Y;
if (rectang == true)
{
objGrp.DrawRectangle(penaAjaib, X1, Y1, X2, -Y2);
}
if (ellipse == true)
{
objGrp.DrawEllipse(penaAjaib, X1, Y1, X2, -Y2);
}
if (line == true)
{
objGrp.DrawLine(penaAjaib, X1, Y1, e.X, e.Y);
}
//if (pen == true)
//{
// objGrp.FillEllipse(new SolidBrush(Color.White), X1, Y1, 4*tebal, 4*tebal);
//}
}
}
private void New_Click(object sender, EventArgs e)
{
pictureBox3.Refresh();
pictureBox3.Image = null;
}
private void Open_Click(object sender, EventArgs e)
{
OpenFileDialog o = new OpenFileDialog();
o.Filter = "Png files|*.png|jpeg files|*jpg|bitmaps|*.bmp";
if (o.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
pictureBox3.Image = (Image)Image.FromFile(o.FileName).Clone();
}
}
private void Save_Click(object sender, EventArgs e)
{
Bitmap bmp = new Bitmap(pictureBox3.Width, pictureBox3.Height);
Graphics g = Graphics.FromImage(bmp);
Rectangle rect = pictureBox3.RectangleToScreen(pictureBox3.ClientRectangle);
g.CopyFromScreen(rect.Location, Point.Empty, pictureBox3.Size);
g.Dispose();
SaveFileDialog s = new SaveFileDialog();
s.Filter = "Png files|*.png|jpeg files|*jpg|bitmaps|*.bmp";
if (s.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
if (File.Exists(s.FileName))///untuk menyimpan file
{
File.Delete(s.FileName);
}
if (s.FileName.Contains(".jpg"))//simpan dengan format jpeg
{
bmp.Save(s.FileName, ImageFormat.Jpeg);
}
else if (s.FileName.Contains(".png"))//simpan dengan format png
{
bmp.Save(s.FileName, ImageFormat.Png);
}
else if (s.FileName.Contains(".bmp"))//simpan dengan format bmp
{
bmp.Save(s.FileName, ImageFormat.Bmp);
}
}
}
private void trackBar1_Scroll(object sender, EventArgs e)
{
tebal = trackBar1.Value;//tebal garis
penaAjaib.Width = tebal;
}
private void pictureBox3_MouseMove(object sender, MouseEventArgs e)
{
if (shouldPaint == true)
{
X = e.X;
Y = e.Y;
X2 = e.X - X1;
Y2 = Y1 - e.Y;
if (pen == true)
{
objGrp.FillEllipse(new SolidBrush(Color.White), 5 * tebal, 5 * tebal, 5 * tebal, 5 * tebal);
objGrp.FillEllipse(new SolidBrush(Color.White), e.X, e.Y, X2, Y2);
}
}
}
}
}
6. jika sudah lakukan running program
klik tombol save:
Ini hasilnya:
emikian tutorial program c# untuk membuat paint sederhana di visual studio menggunakan windows form application.semoga bermanfaat untuk kita semua.
wassalamualaikum wr.wr








Tidak ada komentar:
Posting Komentar