Minggu, 22 Desember 2013

Tutorial File Editor Sederhana

Oke gan, kali ini aye bakal coba bikin tutorial tentang membuat file editor yg sederhana dengan menggunakan C# di Microsoft Visual Studio, langsung simak aja nih ya ulasannya :D

 
Jadi file editor yg aye maksud file editor di sini adalah aplikasi seperti notepad untuk menuliskan teks dan menyimpannya dengan jenis file yang kita inginkan. Fitur pada aplikasi yang saya cantumkan di sini yaitu pada File terdapat, New, Open, Save, dan Exit lalu pada edit terdapat Edit font, copy, cut, dan paste.
Cara membuatnya adalah seperti berikut ini.
step 1.
  • Desain form utamanya, dimulai dengan membuka visual studio -> new project -> visual C# -> Windows Form Application.
  •  Lalu pasang toolbox untuk file editor ini, berikut beberapa toolbox yang digunakan. Biarlah gambar yang berkata hehe :D
  • Menu strip di sini berfungsi untuk memberikan menu pada aplikasi yang ingin kita buat berdasarkan kategori yang kita inginkan. Isi menu File dengan New, Open, Save, dan Exit. Pada menu Edit isi dengan Edit Font, Copy, Cut, Paste, dan Delete. Lalu pada about di sini aye gunakan untuk memunculkan messagebox berisi nama hehe
  • Berikutnya ada textbox, nah properti textbox yang aye ubah di sini adalah ReadOnly nya jadi False jadi ketika diklik New akan berubah menjadi True ReadOnlynya, kemudian pada Multiline aye ubah jadi false jadi ukurannya langsung dibuat seperti yang kita mau.
  • Lanjut saya juga menggunakan filedialog untuk editing fontnya dan juga colorDialog untuk mengedit background color dan juga font colornya.
  • Setelah selesai mendesain formnya, langsung dah nih kita masukkin kodenya pada objek yang diperlukan.
  • Kode using yang digunakan sebagai berikut:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.IO;
  • Lalu pada public partial classnya (yang berada di bawah namespace)
public partial class Form1 : Form
    {
        String filename;
        Boolean newfile = false;
      
        public Form1()
        {
            InitializeComponent();
            textBox1.Enabled = false;
            label1.Text = "";

            ContextMenu klikkananMenu = new ContextMenu();
            klikkananMenu.MenuItems.Add("Copy", copyToolStripMenuItem_Click);
            klikkananMenu.MenuItems.Add("Cut", cutToolStripMenuItem_Click);
            klikkananMenu.MenuItems.Add("Paste", pasteToolStripMenuItem_Click);
            klikkananMenu.MenuItems.Add("Delete", deleteToolStripMenuItem_Click);

            textBox1.ContextMenu = klikkananMenu;
        }
  •  Lalu isi code pada setiap menu yang kita buatnya gans
 private void pasteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Paste();
        }

        private void baruToolStripMenuItem_Click(object sender, EventArgs e)
        {
            newfile = true;
            textBox1.Enabled = true;
            textBox1.Text = "";
            label1.Text = "Filename: *Untitled";
        }

        private void copyToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Copy();
        }

        private void deleteToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Text = textBox1.Text.Remove(textBox1.SelectionStart, textBox1.SelectionLength);
        }

        private void cutToolStripMenuItem_Click(object sender, EventArgs e)
        {
            textBox1.Cut();
        }

        private void fontToolStripMenuItem_Click(object sender, EventArgs e)
        {
            fontDialog1.Font = textBox1.Font;
            fontDialog1.Color = textBox1.ForeColor;

            if (fontDialog1.ShowDialog() != DialogResult.Cancel)
            {
                textBox1.Font = fontDialog1.Font;
                textBox1.ForeColor = fontDialog1.Color;
            }
        }

        private void fontStyleToolStripMenuItem_Click(object sender, EventArgs e)
        {
            fontDialog1.Font = textBox1.Font;
            fontDialog1.Color = textBox1.ForeColor;

            if (fontDialog1.ShowDialog() != DialogResult.Cancel)
            {
                textBox1.Font = fontDialog1.Font;
                textBox1.ForeColor = fontDialog1.Color;
            }
        }

        private void fontColorToolStripMenuItem_Click(object sender, EventArgs e)
        {
            colorDialog1.Color = textBox1.ForeColor;
            if (colorDialog1.ShowDialog() == DialogResult.OK)
            {
                textBox1.ForeColor = colorDialog1.Color;
            }
        }

        private void backgroundToolStripMenuItem_Click(object sender, EventArgs e)
        {
            colorDialog1.Color = textBox1.BackColor;
            if (colorDialog1.ShowDialog() == DialogResult.OK)
            {
                textBox1.BackColor = colorDialog1.Color;
            }
        }

        private void bukaToolStripMenuItem_Click(object sender, EventArgs e)
        {
            OpenFileDialog window_open_dialog = new OpenFileDialog();
            window_open_dialog.Title = "Silahkan pilih file anda";
            window_open_dialog.Filter = "Text files (*.txt)|*.txt|Semua files(*.*)|*.* | Word 97-2003(*.doc)|*.doc | PNG files(*.png)|*.png | Matroska files(*.mkv)|*.mkv | Cumi files(*.cums)|*.cums";

            if (window_open_dialog.ShowDialog() == DialogResult.OK)
            {
                StreamReader stream_read = new StreamReader(File.OpenRead(window_open_dialog.FileName));
                textBox1.Text = stream_read.ReadToEnd();
                stream_read.Dispose();
                //
                textBox1.Enabled = true;
                filename = window_open_dialog.FileName;
                label1.Text = "(*Sedang diedit) " + filename;
            }
        }

        private void simpanToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (newfile == true)
            {
                SaveFileDialog window_save_dialog = new SaveFileDialog();
                window_save_dialog.Title = "Pilih tempat penyimpanan";
                window_save_dialog.Filter = "Text files (*.txt)|*.txt|Semua files(*.*)|*.* | Word 97-2003(*.doc)|*.doc | PNG files(*.png)|*.png | Matroska files(*.mkv)|*.mkv | Cumi files(*.cums)|*.cums";
                //
                if (window_save_dialog.ShowDialog() == DialogResult.OK)
                {
                    StreamWriter stream_write = new StreamWriter(File.Create(window_save_dialog.FileName));
                    stream_write.Write(textBox1.Text);
                    stream_write.Dispose();
                    //
                    filename = window_save_dialog.FileName;
                    label1.Text = filename;
                    newfile = false;
                }
            }
            else
            {
                StreamWriter stream_write = new StreamWriter(filename);
                stream_write.Write(textBox1.Text);
                stream_write.Dispose();
                //
                label1.Text = filename;
            }
        }

        private void keluarToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("Keluar dari aplikasi?", "Konfirmasi", MessageBoxButtons.YesNo, MessageBoxIcon.Question)==DialogResult.Yes)
            {
                Close();
            }
        }

        private void helpToolStripMenuItem_Click(object sender, EventArgs e)
        {
            MessageBox.Show("Dikembangkan oleh : Febrian Nur Ramadhan", "About", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
nah selesai semua codingnya aplikasinya udah siap buat dijalanin dah, nih tampilannya gans







 

Selamat mencoba gan, sekian tutorial dari ane semoga bermanfaat :D