Membuat Form Utama Dan Form Pendaftaran User - Part 4

Cloud Upload Icon Line Connection of Circuit Board

Assalamualaikum Wr. Wb
Untuk melanjukan tutorial sebelummnya Membuat Generate ID Varchar Dengan MySql Kali ini author bakal membuat GUI Interface nya juga. Jadi jangan cuman coding aja, kita juga harus bisa membuat tampilan yang nyaman untuk client. Oke, sekarang kita akan membuat Form Utama atau bisa disebut dengan Main Form.

FORM UTAMA
Main Form atau Form Utama adalah Form pertama yang muncul pertama kali saat aplikasi dijalankan, jadi kalau di game itu kayak main menu nya. Nah sekarang author bakal membagikan desain Form Utama dari aplikasi yang pernah author buat. Ini tampilannya :

image

Nah kurang lebih tampilan seperti itu, memang sangat sederhana sekali. Sekarang author bakal mengganti name dari setiap tools tersebut menjadi :
a. Daftar –>  btn_daftar
b. Close –> btn_close
c. Cari Barang –> btn_caribarang

Ingat! , name dari attribut / tools itu berbeda dengan Text. Karena name digunakan untuk pemanggilan setiap attribut dalam kode / script. Jadi untuk mengolah suatu attribut form kita haru menamai nya terlebih dahulu agar dapat dihapalkan lebih mudah. Dan cara mengganti name ada berada di properties setiap attribut Contoh , di button daftar seperti ini :

image

Lalu jangan lupa scriptnya pada form utama, author gunakan untuk navigasi ke form lain :

    Private Sub MainForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        Dim test As String = generateString()
        MessageBox.Show(test + "  OK") '<- ini bisa dihapus biar ga ganggu'
    End Sub

    Private Sub btn_close_click(sender As Object, e As EventArgs) Handles btn_close.Click
        Me.Close() 'untuk menutup aplikasi'
    End Sub

    Private Sub btn_daftar_click(sender As Object, e As EventArgs) Handles btn_daftar.Click
        'untuk berpindah ke Form Pendaftaran'
        DaftarForm.Show()
        Me.Hide()
    End Sub

    Private Sub btn_belanja_Click(sender As Object, e As EventArgs) Handles btn_caribarang.Click
        'BelanjaForm.Show()'
        Me.Hide()
    End Sub

FORM PENDAFTARAN
Sekarang saatnya kita membuat form pendaftaran , Form pendaftaran digunakan User untuk mendaftar ke aplikasi Olshop kita agar dia bisa berbelanja., Kisarannya seperti ini tampilannya :

image

Untuk nama dari setiap Textbox dan Button nya bakal author jelasin, Textbox itu adalah Inputan dari user yang berupa varchar , berikut adalah name dari setiap attribut :

a. Textbox Username –> txt_username
b. Texbox Password –> txt_password
c. Texbox Nama Depan –> txt_nama_depan
d. Textbox Nama Belakang –> txt_nama_belakang
e. Textbox Alamat –> txt_alamat
f. Textbox Email –> txt_email
g. Textbox No HP –> txt_no_hp
h. Textbox Ulang Password –> txt_re_password
i. Button Daftar –> btn_daftar
j. Button Login –> btn_login
k. Button Browse –> btn_browse
Nah, kalau sudah jelas setiap detail Sekarang langsung ke Scriptnya :


Imports MySql.Data 'jangan lupa import mysql datanya'

Public Class DaftarForm
    'inisiasi variable'
    Dim conn As New MySqlClient.MySqlConnection
    Dim rd As MySqlClient.MySqlDataReader
    Dim fcn As New FunctionClass

    Private Sub DaftarForm_Load(sender As Object, e As EventArgs) Handles MyBase.Load
        'salah satu penggunaan generateString yang sudah kita buat'
        conn.ConnectionString = generateString()
        conn.Open() 'koneksi buka'
    End Sub

    Private Sub DaftarForm_FormClosing(sender As Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
        conn.Close() 'koneksi tutup'
    End Sub

    Private Sub btn_daftar_Click(sender As Object, e As EventArgs) Handles btn_daftar.Click

        If Me.txt_re_password.Text = Me.txt_password.Text Then

            'ini untuk mengambil data gambar dari PictureBox'
            Dim mstream As New System.IO.MemoryStream
            PictureBox1.Image.Save(mstream, Imaging.ImageFormat.Png)
            Dim arr_image = mstream.GetBuffer

            'query sql'
            Dim sql As String = "INSERT INTO tbl_user(id_user,nama_depan,nama_belakang,alamat,email,no_hp,picture,is_accept) VALUES (@v1,@v2,@v3,@v4,@v5,@v6,@v7,@V8)"

            'salah satu penggunaan generateID yang sudah kita buat'
            Dim id_user As String = fcn.generateID("User", "SELECT * FROM tbl_user ORDER BY id_user DESC", conn)

            'input ke tbl_user'
            Using cmnd As New MySqlClient.MySqlCommand(sql, conn)
                cmnd.Parameters.AddWithValue("@v1", id_user)
                cmnd.Parameters.AddWithValue("@v2", Me.txt_nama_depan.Text)
                cmnd.Parameters.AddWithValue("@v3", Me.txt_nama_belakang.Text)
                cmnd.Parameters.AddWithValue("@v4", Me.txt_alamat.Text)
                cmnd.Parameters.AddWithValue("@v5", Me.txt_email.Text)
                cmnd.Parameters.AddWithValue("@v6", Me.txt_no_hp.Text)
                cmnd.Parameters.AddWithValue("@v7", arr_image)
                cmnd.Parameters.AddWithValue("@v8", 0)

                'mengecek apakah data sudah benar'
                If MessageBox.Show("Apakah Data Diri Sudah Benar", "Benar", MessageBoxButtons.YesNo, MessageBoxIcon.Question) = DialogResult.Yes Then
                    'serta insert ke tbl_login untuk keperluan login nanti'
                    Dim sql1 As String = "INSERT INTO tbl_login(username,id_user,password,status) VALUES (@v1,@v2,@v3,@v4)"
                    Using cmnd1 As New MySqlClient.MySqlCommand(sql1, conn)
                        cmnd1.Parameters.AddWithValue("@v1", Me.txt_username.Text)
                        cmnd1.Parameters.AddWithValue("@v2", id_user)
                        cmnd1.Parameters.AddWithValue("@v3", Me.txt_password.Text)
                        cmnd1.Parameters.AddWithValue("@v4", "User")

                        cmnd1.ExecuteNonQuery()
                    End Using

                    cmnd.ExecuteNonQuery()
                    MessageBox.Show("Selamat Anda Berhasil Terdaftar")
                End If
            End Using
        Else
            MessageBox.Show("Maaf, Password Tidak Cocok")
        End If


    End Sub

    Private Sub btn_browse_Click(sender As Object, e As EventArgs) Handles btn_browse.Click
        If OpenFileDialog1.ShowDialog = DialogResult.OK Then
            PictureBox1.Image = Image.FromFile(OpenFileDialog1.FileName)
        End If
    End Sub

    Private Sub btn_login_Click(sender As Object, e As EventArgs) Handles btn_login.Click
        LoginForm.Show() 'show form login'
        Me.Close()
    End Sub

End Class

Nah, disitu saya sudah jelaskan bagian – bagian penting dalam Script diatas melalui comment – comment yang tersedia. Bisa kalian pelajari lagi tentang alur kerja kode script diatas. Bagi yang belum tau atau masih kebingungan tentang kode program diatas bisa komentar di bawah ini. Atau bisa menghubungi saya lewat social media di samping.

Bagi yang kebingungan tentang menginput data gambar ke Mysql bisa lihat tutorial dibawah ini :

Input Gambar ke Database MySql dengan Visual Studio

Sekian tutorial dari saya, Akan berlanjut di tutorial berikutnya. Semoga bermanfaat.

Wassalamualaikum Wr. Wb

No comments: