Minggu, 28 April 2013

Titik terakhir nafas ASD

Jerih Payahku

Ingin berbagi ni untuk teman-teman yang belajar VB.6. Yah, sebenarnya saya juga tidak paham. pelajarnya pun karena Tugas Besar yang sebelumnya tidak pernah mengenal apa tu yang namanya VB. Setidaknya bisalah walau dalam campur tangan teman-teman. Terima kasih buat para asdos yang ikut membimbing. Punya kepuasan tersendiri jika ni program terselesaikan. :)
Ini langkah-langkah dalam pembuatan program saya. Bisa sitambah-tambah sendiri lah. Hanya pengantar, karena program ini jauh dari sempurna. Semoga bisa bermanfaat untuk semua. 
Dalam program ini, saya menggunakan array, struct, manipulation file,  searching dan sorting.
Ini form awal pada program absensiku.
 
Script form masuk
Private Sub login_Click()
If (username.Text = "Novi" And password.Text = "pendtiumd") Then
utama.Show
masuk.Hide

Else:
msg = MsgBox("Username atau Password Salah", vbCritical, "Peringatan")
End If
End Sub

Private Sub password_Click()
password.Text = ""
End Sub

Private Sub username_Click()
username.Text = ""
End Sub

Private Sub profil_Click()
propil.Show
masuk.Hide
End Sub

Private Sub help_Click()
bantuan.Show
masuk.Hide
End Sub

Private Sub Timer2_Timer()
clock.Caption = Format(Now, "hh:mm:ss")
End Sub

Private Sub Timer4_Timer()
hari.Caption = Format(Now, "dddd")
tanggal.Caption = Format(Now, "dd MMMM yyyy")
End Sub

Private Sub Timer3_Timer()
Select Case program.Visible
Case True
program.Visible = False
Case Else
program.Visible = True
End Select
End Sub

Private Sub keluar_Click()
msg = MsgBox("Anda yakin ingin keluar dari program ini ?", vbQuestion + vbYesNo, "Pesan")
If msg = vbYes Then
MsgBox "Terima Kasih Telah menggunakan Program ini", vbDefaultButton4, "Pesan"
Unload Me
End If
End Sub

ini form kedua, menu bantuan dalam penggunaan program ini.
 


Script form help
Private Sub Command1_Click()
masuk.Show
bantuan.Hide
End Sub

Ini form profilku. Biar lebih kenal lah. hehehe

Script form profil
Private Sub balik_Click()
masuk.Show
propil.Hide
End Sub

ini form menu utama. yang terpenting dalam program ini.

Script form utama
Dim Ndata As Integer
Dim Form_awal As String
Dim nm(100), no(100), Ket(100) As String

'Struct
Private Type novi
    nim As String
    nama As String
    Ket As String
End Type

Dim data(100) As novi

Dim n As Integer

Private Sub Form_Load()
lihatdata
Ndata = 0
Frame1.Enabled = False
End Sub

Private Sub inputdata_Click()
Dim LisTab As ListItem
Ndata = Ndata + 1
no(Ndata) = Trim(nimmahasiswa)
nm(Ndata) = Trim(namamahasiswa)
Ket(Ndata) = Trim(txt_ket)

Set LisTab = Me.ListView1.ListItems.Add(, , no(Ndata))
 LisTab.SubItems(1) = nm(Ndata)
 LisTab.SubItems(2) = Ket(Ndata)

namamahasiswa.Text = ""
nimmahasiswa.Text = ""
txt_ket.Text = ""
Comb_Status.Text = ""

namamahasiswa.SetFocus

End Sub

Private Sub Opt_ket_Click(Index As Integer)
 Select Case Index
  Case 0
   txt_ket.Text = "Izin"
  Case 1
   txt_ket.Text = "Sakit"
  Case 2
   txt_ket.Text = "Alpha"
 End Select
End Sub

Private Sub Comb_Status_Click()
 If Comb_Status.Text = "MASUK" Then
    txt_ket.Text = "Masuk"
    Frame1.Enabled = False
        opt_ket(0).Value = False
        opt_ket(1).Value = False
        opt_ket(2).Value = False
 Else
     Frame1.Enabled = True
 End If
End Sub

Private Sub simpan_Click()
Dim i As Integer


For i = 1 To Ndata
Print #1, no(i) & ":"; nm(i) & ":"; Ket(i)
Next i

Close #1

End Sub

Private Sub lihatdata()
 Dim tmp, a As String
   
n = 0
Open App.Path & "\Absensi.txt" For Input As #1
   Do While Not EOF(1)
      Input #1, a
      tmp = Split(a, ":")
    data(n).nim = tmp(0)
   data(n).nama = tmp(1)
   data(n).Ket = tmp(2)
   n = n + 1
    Loop
    Close #1
End Sub

Private Sub Cmd_Show_Click()
ListView1.ListItems.Clear
Call lihatdata
tampil
End Sub

Private Sub tampil()
Dim LisTab As ListItem
For i = 0 To n - 1
 Set LisTab = ListView1.ListItems.Add(, , data(i).nim)
          LisTab.SubItems(1) = data(i).nama
          LisTab.SubItems(2) = data(i).Ket
Next i
End Sub

Private Sub cari()
 Dim caridata, tmp, data As String
 Dim temu
 caridata = InputBox("MASUKKAN NIM YANG DICARI", "CARI DATA")

 If caridata = "" Then
  Exit Sub
 Else
    Open App.Path & "\Absensi.txt" For Input As #1
    Do While Not EOF(1)
      Input #1, data
      tmp = Split(data, ":")
     
      If Trim(tmp(0)) = caridata Then
       MsgBox "NIM : " & tmp(0) & " | " & _
       "NAMA : " & tmp(1) & " | " & _
       "KET : " & tmp(2), , "Hasil Pencarian"
       Close #1
   
       temu = 1
       Exit Sub
      End If
      Loop
      Close #1
    End If
    If temu <> 1 Then
    MsgBox "Not Found", vbDefaultButton1, "Pesan"
    End If
End Sub

Private Sub Cmd_Cari_Click()
 Call cari
End Sub

Private Sub Sort()
    For i = 0 To n - 1
    For j = 0 To n - 1
    If data(i).nim < data(j).nim Then
    tukar Int(i), Int(j)
    End If
    Next
Next
End Sub

Private Sub tukar(data1 As Integer, data2 As Integer)
Dim temp As String

    temp = data(data1).nim
    data(data1).nim = data(data2).nim
    data(data2).nim = temp

    temp = data(data1).nama
    data(data1).nama = data(data2).nama
    data(data2).nama = temp

    temp = data(data1).Ket
    data(data1).Ket = data(data2).Ket
    data(data2).Ket = temp
End Sub

Private Sub tampilsort()
For i = 0 To n - 1
 Set baris = ListView1.ListItems.Add(, , data(i).nim)
          baris.SubItems(1) = data(i).nama
          baris.SubItems(2) = data(i).Ket
Next i
End Sub
Private Sub cmd_sort_Click()
ListView1.ListItems.Clear
Call Sort
tampilsort

End Sub

Private Sub exit_Click()
Dim msg As String
msg = MsgBox("Anda yakin ingin keluar dari program ini ?", vbQuestion + vbYesNo, "Pesan")
If msg = vbYes Then
MsgBox "Terima kasih telah menggunakan program ini", vbDefaultButton1, "Pesan"

Unload Me
End If
End Sub




 Inilah serangkaian program absensi dengan VB.6.

Tidak ada komentar: