FUNCTION PADA VISUAL BASIC 2010

Kali ini postingan saya berisi tentang tugas dari dosen Pemrograman Visual mengenai Function pada vb .NET
-dengan source code




-setelah di run akan muncul gambar seperti berikut.


penjelasannya :
A.Private Function fstat(ByVal ParamArray args() As Object) As Single()
Membuat sub program dengan Function dengan variable fstat dengan parameter ByVal yang bererti melewatkan parameter secara nilai dengan tipe single yang berarti bilangannya bulat.

B.Dim hasil(3) As Single
Membuat variable dengan nama hasil dengan jumlah teratas atau Ubound 3 yang bertipe data single.

C.Dim i As Integer
Membuat variable dengan nama i yang bertipe data integer.

D.For i = 0 To UBound(args)
Merupakan perulangan untuk i=0 sampai batas teratas dari array

E.hasil(0) = hasil(0) + args(i)
hasil (0) = 0 karena perulangan belum di mulai.
args(i) = nilai dari indeks array ke i

F.If i = 0 Then
jika i = 0 maka lakukan sebagai berikut

G.hasil(1) = args(i)
hasil 1 = nilai dari indeks ke i

H.hasil(2) = args(i)
hasil 2 =nilai dari indeks ke i
End If
Selain i=0,atau jika i bukan sama dengan 0

I.If hasil(1) < args(i) Then hasil(1) = args(i)
Jika hasil 1 lebih kecil dari nilai i maka hasil 1= nilai dai indeks ke i

J.If hasil(1) > args(i) Then hasil(1) = args(i)
Jika hasil 2 lebih kecil dari nilai i maka hasil 2= nilai dai indeks ke i
Next i

K.Return hasil
Akan kembali ke hasil

L.Dim statistik As Single() = fstat(1, 6, 2)
Membuat vaariable dengan nama ststistik yang bertipe data single dengan nilai array pada indeks ke 0=1
Indeks ke 1=6
Indeks ke 2=2

M.TextBox1.Text = statistik(0)
TextBox2.Text = statistik(1)
TextBox3.Text = statistik(2)
Pada texbox1 akan bernilai sesuai dengan statistik dari indeks ke 0
Demikian juga pada texbox ke 2 dan 3
End Sub


2.Overloading Function

-Overloading function adalah beberapa fungsi yang memiliki perintah berbeda tetapi namanya sama.Pada program diatas terdapat 2 Fuction hitung pada program ini namun program hanya akan menjalankan salah satunya saja.
-Pada dua procedure diatas, yg pertama mempunyai dua buah deklarasi variabel dan yang kedua mempunyai tiga deklarasi variabel, lalu bagaimana cara kerjanya? Hal ini bergantung dari variabel yg disuplay pada saat procedure tersebut dipanggil, apabila hanya menyuplai tiga variabel, pada saat pemanggilan procedure maka yg di eksekusi adalah procedure yang kedua, akan tetapi jika memberikan dua nilai variabel pada saat pemanggilan procedure maka yg dieksekusi adalah procedure yg pertama.

3.Macam-Macam Function bawaan
Dalam Visual Basic, fungsi bawaan adalah suatu fungsi yang sudah ada dalam Visual Basic dan dapat digunakan secara langsung. Ada sejumlah fungsi-fungsi bawaan dalam VB diantaranya adalah fungsi untuk mengubah suatu tipe data String dari suatu TextBox menjadi tipe data numerik agar dapat digunakan untuk melakukan operasi perhitungan, fungsi yang berkaitan dengan matematika, dll.

- Fungsi Numeric
CInt () ===> Pembuatan nilai desimal 0.5 dan lebih ke integer yang lebih dekat
Fix ()    ===> Pemotongan suatu nilai desimal menjadi integer
Int ()    ===> Pembuatan ke bawah suatu nilai desimal

- Fungsi String

Left         →mengambil karakter dari sebelah kiri
Right      → mengambil karakter dari sebelah kanan
Mid         → mengambil karakter dari tengah
LTrim    → membuang semua semua awal spasi yang ada disebelah kiri
RTrim    → membuang semua semua awal spasi yang ada disebelah kanan
Trim       → membuang semua spasi yang ada disebelah kiri dan kanan
Len          → memberikan nilai balik integer sebagai panjang string
LCase     → mengubah string menjadi huruf kecil semua
UCase    → mengubah string menjadi huruf besar semua
Str (int) → mengubah bilangan menjadi string (konversi)
Chr (Asscii) → konversi dari nilai ascii menghasilkan karakter

- Fungsi Matematika

Val (Str)                                   → konversi string menjadi integer
Asc(Char)                                → konversi karakter menghasilkan nilai ascii
Abs(Number)                         → memberikan nilai mutlak dari suatu nilai negatif
Round(Number,Decimal) → membulatkan suatu angka sampai beberapa digit decimal
Sqr(Number)                         → memberikan hasil akar kuadrat dari suatu nilai
Tan()                                         → mengembalikan nilai tangen dari argument dalam radian
Cos()                                          → mengembalikan nilai cosinus dari argument dalam radian
Atn()                                          → mengembalikan nilai arc tangen dari argument dalam bentuk radian
Long()                                       → mengembalikan nilai logaritma dari argument
CInt()                                        → pembulatan nilai decimal 0.5 dan lebih ke integer yang terdekat
Fix()                                           → pemotongan suatu nilai decimal menjadi integer
Int()                                            → pembulatan ke bawah suatu nilai decimal

- Fungsi Tanggal dan Waktu

Time : mencari tahu waktu saat ini atau menetapkan waktu, tergantung format
pemakaiannya ( lihat contoh di bawah ini)
A$ = Time ‘hasil 18:16:35 AM
MyTime = #4:35:17 PM# ‘assign a time
Time = MyTime ‘set system time to MyTime

Now : merekam tanggal dan waktu sekarang
A$ = Now ‘hasil 10/8/02 18:16:35 AM

Timer : menghitung  jumlah  detik  sejak tengah malam
Start = Timer ‘hasilnya 29991


Date : menetapkan hari pada sistem komputer
Dim MyDate
MyDate = #February 12, 1985 # ‘Assign a date
Date = MyDate ‘Change system date

DateAdd : menghasilkan Varian(Date) yang berisi tanggal baru setelah suatu interval waktu yang ditetapkan dari tanggal lama.
DateAdd(kode_interval,jumlah_interval,tanggal_lama)

Contoh pemakaiannya : 
Dim FirstDate As_Date ‘Declare variables
Dim IntervalType As String
Dim Number As Integer
Dim Msg
FirstDate = InputBox(“Enter a date”)
Bynber = InputBox(“Enter number of months to add”)
Msg = “New date : “ & DateAdd(“m”, Number, FirstDate)
MsgBox Msg


DateDiff : mencari interval waktu antara dua tanggal
DateDiff(interval, date1, date2[, firstdayofweek[, firstweekofyear]]) Dim TheDate As Date ‘declare variables
TheDate = InputBox(“Enter a date”) Msg = “Day from today : “ & DateDiff(“d”, Now, TheDate)
MsgBox Msg


DateSerial : menghasilkan tanggal dengan bulan/hari/tahun
MyDate = DateSerial(1969, 2, 12) ‘Hasil 2/12/69


DateValue : menghasilkan tanggal
MyDate = DateValue(“February 12, 1969”) ‘Hasil 2/12/69


Year : menghasilkan tahun sekarang
MyYear = Year(#2/12/1969#) ‘Hasil 1969


Month : menghasilkan bilangan integer yang menunjukkan bulan
MyDate = #February 12, 1969# ‘Assign a date
MyMonth = Month(MyDate) ‘MyMonth = 2


MonthName : menghasilkan teks yang menunjukkan nama bulan
a$ = MonthName(1, True) ‘a$ = Jan
b$ = MonthName(1, False) ‘b$ = January
c$ = MonthName(1) ‘c$ = January


Day : menghasilkan integer yang menunjukkan tanggal dari data date
MyDate = #February 12, 1969# ‘Assign a date
MyDay = Day(MyDate) ‘MyDay berisi 12


Hour : menghasilkan integer yang menunjukkan jam dari data timer
MyTime = #4:35:17 PM# ‘Assign a time
MyHour = Hour(MyTime) ‘MyHour berisi 16


Minute : menghasilkan integer yang menunjukkan menit dari data timer
MyTime = #4:35:17 PM# ‘Assign a time
MyMinute = Minute(MyTime) ‘MyMinute berisi 35


Second : menghasilkan integer yang menunjukkan detik dari data timer
MyTime = #4:35:17 PM# ‘Assign a time
MySecond = Second(MyTime) ‘MySecond berisi 17


TimeSerial : menghasilkan waktu dengan jam/menit/detik
MyTime = TimeSerial(16, 35, 17) ‘Isinya 4:35:17 PM


TimeValue : mengubah string waktu dari pukul 0:00:00 (12:00:00 AM) sampai 23:59:59 (11:59:59 PM) menjadi data waktu
MyTime = TimeValue(“4:35:17 PM”) ‘Isinya 4:35:17 PM
MyTime = TimeValue(“0:00:00”) ‘Isinya 12:00:00 AM


WeekDay : menghasilkan bilangan petunjuk hari dari suatu tanggal
Hari = #February 12, 1969# ‘Hari Rabu
MyweekDay = Weekday(Hari) ‘MyweekDay isinya 4

WeekDayName : menghasilkan teks nama hari dalam satu minggu
WeekDayName(weekday, abbreviate, firstdayofweek) 
Hari = #2/12/1969# ‘Assign a date
MyWeekDay = Weekday(Hari) ‘MyWeekDay isinya 4
MyTime = WeekdayName(MyWeekDay) ‘Isinya Wednesday


sekian penjelasan saya mengenai Function


 

Tugas 7 Pemograman Visual


MENU
Digunakan untuk mengorganisasikan semua Form dan laporan pada aplikasi yang dibuat, Sehingga dapat di panggil dengan mudah
Jenis menu
2 contoh menu Mdi child
                Menu Strip
                                Biasa disebut menu utama
                Menu Context 
                                Menu yang di aktifkan dengan click kanan

Cukup dengan koding yang sederhana seperti berikut :

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e AsSystem.EventArgs) Handles MyBase.Load
     
    End Sub

    Private Sub Form2ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles Form2ToolStripMenuItem.Click
        Form3.MdiParent = Me
        Form3.Show()
    End Sub

    Private Sub Form3ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles Form3ToolStripMenuItem.Click
        Form4.MdiParent = Me
        Form4.Show()
    End Sub

    Private Sub Form1ToolStripMenuItem_Click(ByVal sender As System.Object, ByVal eAs System.EventArgs) Handles Form1ToolStripMenuItem.Click
        Form2.MdiParent = Me
        Form2.Show()
    End Sub

Jika dilajankan akan menjadi seperti berikut :



Gunakan koding sederhana seperti berikut

   Private Sub CascadeToolStripMenuItem_Click(ByVal sender As System.Object, ByVale As System.EventArgs) Handles CascadeToolStripMenuItem.Click
        Me.LayoutMdi(MdiLayout.Cascade)
    End Sub

    Private Sub TileHorizontalToolStripMenuItem_Click(ByVal sender AsSystem.Object, ByVal e As System.EventArgs) HandlesTileHorizontalToolStripMenuItem.Click
        Me.LayoutMdi(MdiLayout.TileHorizontal)
    End Sub

    Private Sub TileVerticalToolStripMenuItem_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles TileVerticalToolStripMenuItem.Click
        Me.LayoutMdi(MdiLayout.TileVertical)
    End Sub

Maka jika dijalankan kan seperti berikut

1.CASCADE



2.HORIZONTAL

                                


3.VERTICAL

  

Sekian tugas yang dapat saya selesaikan,semoga sedikit bermanfaat dan menambah ilmu…Terima Kasih
Wassalamu’alaikum wr.wb

MODIFIKASI KASIR TUGAS 3 DAN PUZZLE





dan akan saya modifikasi menjadi seperti ini :
dengan ketentuan sebagai berikut : 






  1. Saat form dijalankan : semua isia tiadak aktif, tombol isi data dan tutup aktif, tombol clear tidak aktif
  2. Saat ditekan tombol isi data : kode barang, jumlah barang, cara beli, tombol clear dan tutup aktif, tombol isi data tidak aktif
  3. saat di tekan tombol clear sama dengan saat form dijalankan
       Oke langsung ke cara pembuatannya:
  1. tambahkan tombol baru yaitu tombol isi data pada form
  2. pada combo kode barang, textbox jumlah barang, radio tunai & kredit, dan tombol clear beri atribut tag "grup1" pada properties
  3. lalu pada textbox nama barang, harga barang, total harga, diskon, total bayar beri atribut tag "grup2" pada properties
  4. dan atribut tag "grup3" untuk tombol isi data
  5. dobel klik pada form untuk masuk ke sub form_load dan masukkan kode agar saat dijalankan form kontrol dengan atribut tag grup1 dan grup2 tidak aktif, berikut coding beserta penjelasannya: 
 
 
6. dobel klik tombol isi data untuk memasukkan kode agar saat di klik kontrol dengan atribut tag "grup1" yang terdiri dari kode barang, jumlah barang dan cara beli aktif. Berikut kode dan penjelasannya: 
 
 
7. kembali ke form desain lalu dobel klik tombol isi data dan masukkan kode agar saat di klik keadaan kembali seperti saat form pertama di jalankan, berikut coding dan penjelasan:




  1. Run Program
        Oke sekian penjelasan modifikasi program kasir yang saya buat, sekarang lanjut keprogram ke dua yaitu PUZZLE












                              PUZZLE

   Kali ini kita akan membuat puzzle angka dan sat program di jalankan akan tampil sebagai berikut :





Untuk model tampilannya saya sengaja meniru dosen saya yaitu menggunakan listBox untuk menampung angka yang akan di acak, selain itu menggunakan listbox juga akan mempersingkat coding yang akan kita tulis. puzzle tersebut memiliki beberapa ketentuan sebagai berikut :

  1. Saat Form di jalankan posisi Angka acak
  2. Saat di tekan tombol yang terletak di dekat tombol kosong, maka tombol tersebut akan menempati tombol kosong, begitu seterusnya sampai angkanya tersusun dari 1-8
  3. Saat semu angka tersusun tampilkan pesan "Selamat Anda Berhasil"
       Di sini untuk ketentuan pertama saya abaikan karena saya memberi tombol acak untuk mengacak angka sebelum memulai permainan sehingga saat form di jalankan keadaan angka masih terurut, Berikut cara pembuatannya :

  1. Buat form dengan tampilan seperti di atas, dan beri nama tombol acak dengan btacak, tombol keluar dengan btkeluar dan tombol sisanya yaitu untuk 1 sampai 9 beri nama bt1- bt9
  2. beri atribut tag "1" pada semua tombol puzzle
  3. untuk mempersingkat coding kita buat modul, dengan cara klik kanan pada project - add - Module - OK
  4. pada module kita akan mengetikan method untuk menukar tombol yang memiliki isi dengan tombol kosong, berikut coding dan penjelasan :

 



5. kemudian kita juga akan membuat method untuk mengecek apakah semua tombol sudah pada tempatnya, jika sudah akan di tampilkan pesan " Selamat, Anda Berhasil", berikut coding dan penjelasannya :
6. kembali ke form1 design lalu doble klik pada form untuk masuk ke sub form_load. pada sub ini kita akan memberi perintah untuk mengisi listBox, dan buat juga variabel dengan tipe boolean pada class form1 yang akan kita gunakan untuk mengacak angka nanti. pada form load beri perintah sebagai berikut :



7. untuk tombol angka 1-8 & tombol kosong alias bt1-bt9 kita masukkan method tukar() dan menang() yang sudah kita buat pada module: seperti berikut :  



8 untuk mengacak angka kita memerlukan kotrol form berupa timer, pada form design doble klik timer pada toolbox maka akan muncul timer pada bagian bawah. Timer merupakan kontrol form yang tidak di tampilkan saat program di jalankan alias background
.
9. kita akan mengisi timer dengan perintah untuk mengacak isi ListBox lalu isi ListBox akan ditampilkan pada kotak puzzle, untuk setiap kotak puzzle berisi satu item yang ada pada listBox sesuai urutan dari atas. Berikut coding dan penjelasannya :




10.untuk mengacak angka kita beri perintah pada tombol acak unutk menjalankan timer seperti berikut :  



11.Dan terakhir untuk tombol keluar kita beri perintah untuk menampilkan kotak konfirmasi apakah ingin keluar atau tidak seperti ini :







  1. Jalankan Program
       Yup.. begitulah sekiranya cara pembuatan puzzle dengan vb, dan berhubung ane dah ngantuk dan tangan dah bentol2 semua di keroyok nyamuk, sekian dulu oke, kurang lebihnya mohon maaf xlo ada salah pengetikan..heheheh

Wassalammu'alaikum Wr.Wb.

TUGAS 2 VISUAL BASIC

Jawaban Latihan 1
a. yang menyebabkah program error pd btAlamat1_Click  baris program alamat = “kuningan”, adalah karena sifat dari constanta sendiri yang nilainya tidak bisa di ubah-ubah/ bersifat tetap ( yang pd program ini pendeklarasian nilai konstantan alamat berada di bawah Public Class).
b. yang menyebabkan ketika menekan tombol Nama1 dan Nama2 mengeluarkan output yang berbeda di txtNama yakni “Nandang” dengan “Nandang Hermanto”
hal ini dikarenakan di dalam coding tombol Nama1 telah memesan variabel nama bertipe String yang sudah di beri nilai “Nandang”. Sedangkan di tombol Nama2 hanya tertulis perintah untuk menampilkan nilai dari variabel nama saja, sehingga program akan mengambil nilai yang sudah dideklarasikan di modul1 yakni “Nandan Hermanto”. Sehingga saat si User menekan tombol Nama1 program akan membaca variabel nama yang sudah diberi nilai akan muncul “Nandang” sedang tombol Nama2  program  membaca nilai variabel yang aberada di modul1 akan muncul “Nandang Hermanto”.
 
c. yang menyebabkan ketika menekan tombol Umur1 hasilnya tetap 1 sedang ketika menekan tombol Umur2 hasilnya selalu bertambah 1 secara berkala
hal ini dikarenakan pendeklarasian di tombol Umur1 berjenis Dim (sat pendeklarasian umur) yang mana data akan hilang setelang program tereksekusi sedang tombol Umur2 berjenis Static (saat pendeklarasian umur) yang nilainya tetap tersimpan walau telah tereksekusi.
d. analisa saya di form2 yakni form2 mengakses seluruh data data yang sudah dideklarasikan dari modul1. (data yang diakses berupa output nama, alamat dan umur)

Jawaban Latihan 2
Kelemahan dari program 2 menurut saya:
kata “TAS” dalam comboBox(daftar kode barang) belum ada nilainya sehingga tampak tak ada fungsinya, lebih baik di hapus atau kalau tidak ingin dihapus di beri nilai pada select case.
Properti bagian enable dari TextBox-TextBox yang digunakan untuk output seperti namaBarang, hargaBarang, totalHarga, diskon dan total bayar hendaknya di falsekan  agar user tidak bisa menginputkan data di bagian tsb, sehingga memperjelas dalam penginputkan data.
 
 
 gb. sebelum coding dirubah

Misal coding tetap sama hanya dengan menambahkan
Case "TAS"
                namaBarang = "tas"
                harga = 700000
di bagaian select case sebelum case else pada cmbKode
hasil program 2 setelah di perbaiki:
 
gb. output setelah di perbaiki
dengan coding sebagai berikut:
 
Public Class Form1

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        cmbKode.Items.Add("SPT")
        cmbKode.Items.Add("SND")
        cmbKode.Items.Add("TST")
        cmbKode.Items.Add("TOP")
        cmbKode.Items.Add("TAS")
    End Sub

   Private Sub cmbKode_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbKode.SelectedIndexChanged
        Dim kdBarang, namaBarang As String
        Dim harga As Single
        kdBarang = cmbKode.Text


Select Case kdBarang
            Case "SPT"
                namaBarang = "Sepatu"
                harga = 200000
            Case "SND"
                namaBarang = "Sandal"
                harga = 100000
            Case "TST"
                namaBarang = "T-Sirt"
                harga = 1500000
            Case "TOP"
                namaBarang = "Topi"
                harga = 500000
            Case "TAS"
                namaBarang = "Tas"
                harga = 700000
            Case Else
                namaBarang = "-"
                harga = 0
        End Select


txtNama.Text = namaBarang 
txtHarga.Text = harga
    End Sub

    Private Sub txtJumlah_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtJumlah.TextChanged
        txtTotal.Text = Val(txtHarga.Text) * Val(txtJumlah.Text)
        txtBayar.Text = Val(txtTotal.Text) - Val(txtDiskon.Text)
    End Sub 

 


Private Sub radioTunai_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles radioTunai.CheckedChanged
  txtDiskon.Text = Val(txtTotal.Text) * 10 / 100
  txtBayar.Text = Val(txtTotal.Text) - Val(txtDiskon.Text)
    End Sub 


Private Sub radioKredit_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles radioKredit.CheckedChanged
  txtDiskon.Text = 0
  txtBayar.Text = Val(txtTotal.Text) - Val(txtDiskon.Text)
    End Sub


Private Sub btClear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btClear.Click
        txtDiskon.Clear()
        txtHarga.Clear()
        txtJumlah.Clear()
        txtTotal.Clear()
        txtNama.Clear()
        cmbKode.Text = ""
        Me.radioTunai.Checked = False
        Me.radioKredit.Checked = False
  End Sub

    Private Sub btTutup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btTutup.Click
        Me.Close()
    End Sub
End Class


  

Tentang blog

Blog ini saya buat pertama karena iseng2 dan keingin tahuan.Lalu saya kembangkan untuk menjadi catatan pribadi tapi akhirnya saya tertarik untuk mempublikasikan blog ini,Dan ini lah hasilnya...!!