Minggu, 13 September 2009
Rabu, 22 Juli 2009
Pertemuan 2
Fungsi yang dipakai yaitu:
OpenDatabase(, , )
: Nama file MDB yang mau dibuka
: Isi True jika akan dibuka secara ekslusif
(gak bisa dimodifikasi user laen)
: Isi true jika cuma baca aja,
False supaya bisa nulis
Cara kerja program:
- beri kesempatan user untuk membuka file MDB (Open for file)
- setelah file dipilih, buka file tersebut dengan fungsi OpenDatabase di atas
- setelah file dibuka, lakukan iterasi (looping) terhadap obyek TableDefs, untuk mendapatkan obyek-obyek tabel didalamnya.
- yang ditemukan bukan cuma Tabel untuk data, tapi juga tabel untuk info system, yang nama tabelnya diawali dengan 'MSys'. Untuk itu perlu dicek, kalo 4 huruf di depannya adalah 'MSys' berarti tabelnya system.
- untuk setiap tabel, lakukan iterasi juga untuk menampilkan field-fieldnya, yang akan ditampilkan adalah nama field, tipe dan panjangnya.
- lalu jika user mengklik salah satu tabel, pada obyek ListView di bagian kanan form, ditampilkan semua isi datanya.
Kamis, 16 Juli 2009
maCaM arsiteKtuRRRR
Arsitektur terdistribusi : Lokasi komponen sistem di satu tempat atau tidak.
Jumat, 12 Juni 2009
tUgaZZZZ
1. Menu bar :menu pilihan yang berupa teks.
2. Menu editor:Menampilkan daftar menu yang berisi daftar perintah-perintah yang dapat
digunakan saat bekerja pada Visual BASIC
3. Classes
4. Form 1 project 1
5. Project - Form 1 (Code)
6. Propertise - Command 1
7. Folder - form
8.Option button
9. Immediate
10.Locals
11. Add watch
Sabtu, 30 Mei 2009
sOaL uTs oeyy!!
1. Skrip yang masih tergolong bahasa pemrograman bahasa level Rendah adalah : 0B38:0100 B402
2. Skrip yang masih tergolong bahasa pemrograman bahasa level menengah adalah : Mov AH,02h
3. Skrip yang masih tergolong bahasa pemrograman bahasa level tinggi adalah : Write(‘A’);
4. Berisi Data atau program adalah bagian definisi dari : file
5. Kumpulan instruksi / perintah yang dirangkaian sehingga membentuk suatu proses dinamakan :program
6. Apa yang dimaksud dengan meng-Compile instruksi program yang dibuat : memeriksa program yang telah disusun
7. Flowchart berfungsi sebagai : alat bantu yang berupa simbol – simbol yang saling dihubungkan sehingga dapat menggambarkan alur pikir sebuah program atau permasalahan yang akan diproses dengan progam komputer.
8. Contoh Bahasa Pemrograman Berbasis Teks, kecuali: Visual basic
9. Bahasa Pemrograman Visual Basic memiliki karakter utama yakni event driven yang bermakna : Program menunggu user menjalankan program
10. Berikut yang bukan termasuk Event adalah : Merubah tampilan window
11. Salah satu contoh Properties yakni : Bentuk tampilan di window dapat anda ubah melalui template(cetakan) yang disediakan.
12. Yang dimaksud dengan methode adalah : susunan perintah yang dikerjakan bila event dijalankan
13. Jelaskan tujuan program berikut :
Private Sub Lblnama_DblClick()
Lblnama.caption =“ Saya sedang Belajar Visual Basic”
End Sub
Jika diklik 2 kali maka akan ditampilkan “Saya sedang Belajar Visual Basic.
14. Apa Perbedaan dari Combo Box dengan List Box :Combo box tampilannya hanya satu sedangkan List box menampilkan beberapa pilihan.
15. Property Alignment pada label berfungsi untuk :Mengatur tata letak teks.
16. Tempat dimana kita membuat tampilan (user interface) dari program aplikasi dinamakan :properties
17. Dengan melihat tampilan program diatas,komponen yang dibutuhkan adalah :
18. Dengan melihat gambar diatas, komponen yang ditunjuk oleh label A adalah :
19. Dengan melihat gambar diatas, komponen yang ditunjuk oleh label A adalah :
20. Dengan melihat gambar diatas, komponen yang ditunjuk oleh label A adalah :
Minggu, 17 Mei 2009
trafficlight
Const Off = &H8000000F
Const Red = vbRed
Const Green = vbGreen
Const Orange = &H80C0FF
'a simple traffic junction of two perpendicular crossing streets
'consists of 4 traffic poles. Each traffic pole has a green, orange
'and red light. There is always just one light on per pole.
'The traffic lights control on one of those junctions has just 4
'statusses. The current status is stored in the variable "Status".
Dim Status As Integer
'The time a status lasts, is derived from the following constants, which
'indicate the time in seconds.
Const TimeForStatus1 = 5
Const TimeForStatus2 = 3
Const TimeForStatus3 = 5
Const TimeForStatus4 = 3
Private Sub SetStatus(ByVal intStatus As Integer)
'Set the status variable to the new status
Status = intStatus
'Turn off all the lights
shpLamp1Groen.FillColor = Off
shpLamp1Oranje.FillColor = Off
shpLamp1Rood.FillColor = Off
shpLamp2Groen.FillColor = Off
shpLamp2Oranje.FillColor = Off
shpLamp2Rood.FillColor = Off
shpLamp3Groen.FillColor = Off
shpLamp3Oranje.FillColor = Off
shpLamp3Rood.FillColor = Off
shpLamp4Groen.FillColor = Off
shpLamp4Oranje.FillColor = Off
shpLamp4Rood.FillColor = Off
'Turn on the appropriate lights with the correct color,
'depending on the current status
Select Case intStatus 'or "Select Case Status", won't make any difference
Case 1
shpLamp1Rood.FillColor = Red
shpLamp2Groen.FillColor = Green
shpLamp3Rood.FillColor = Red
shpLamp4Groen.FillColor = Green
Timer1.Interval = TimeForStatus1 * 1000
Case 2
shpLamp1Rood.FillColor = Red
shpLamp2Oranje.FillColor = Orange
shpLamp3Rood.FillColor = Red
shpLamp4Oranje.FillColor = Orange
Timer1.Interval = TimeForStatus2 * 1000
Case 3
shpLamp1Groen.FillColor = Green
shpLamp2Rood.FillColor = Red
shpLamp3Groen.FillColor = Green
shpLamp4Rood.FillColor = Red
Timer1.Interval = TimeForStatus3 * 1000
Case 4
shpLamp1Oranje.FillColor = Orange
shpLamp2Rood.FillColor = Red
shpLamp3Oranje.FillColor = Orange
shpLamp4Rood.FillColor = Red
Timer1.Interval = TimeForStatus4 * 1000
End Select
'We need to call the following subroutine
RefreshLights
End Sub
Private Sub RefreshLights()
'This subroutine makes sure that de data on the screen is
'displayed correctly
shpLamp1Groen.Refresh
shpLamp1Oranje.Refresh
shpLamp1Rood.Refresh
shpLamp2Groen.Refresh
shpLamp2Oranje.Refresh
shpLamp2Rood.Refresh
shpLamp3Groen.Refresh
shpLamp3Oranje.Refresh
shpLamp3Rood.Refresh
shpLamp4Groen.Refresh
shpLamp4Oranje.Refresh
shpLamp4Rood.Refresh
End Sub
Private Sub Form_Load()
'When the programs starts, it starts with status 1
SetStatus 1
'Initializing the timer will start the timer1_timer subroutine after the
'set interval has elapsed (in milliseconds)
Timer1.Interval = TimeForStatus1 * 1000
End Sub
Private Sub Timer1_Timer()
'Change to the next status
Status = Status + 1
'If the next status is 5 then we need to change it back to one
If Status = 5 Then Status = 1
SetStatus Status
End Sub
Sabtu, 28 Maret 2009
chapppter 5
'timers are bad :)
'main body... each part of the snake has X and Y
Private Type Part
X As Integer
Y As Integer
End Type
'Dynamic array to store part coordinates
Dim Part() As Part
'Velocity in X and Y direction of the snake
Dim vX As Integer, vY As Integer
Dim i As Integer 'for loops
Dim CS As Single 'cell size
Dim FX As Integer, FY As Integer 'food coordinates
Dim X As Integer, Y As Integer
Dim bRunning As Boolean, died As Boolean
Private Sub Form_Load()
Randomize 'random generation
'Initialize controls******************
Picture1.BackColor = vbWhite
Picture1.ScaleMode = 3 'pixels
CS = 20 'cell size in pixels
X = Int(Picture1.ScaleWidth / CS)
Y = Int(Picture1.ScaleHeight / CS)
Picture1.AutoRedraw = True
Picture1.ScaleWidth = X * CS
Picture1.ScaleHeight = Y * CS
Me.WindowState = 2
Me.Show
DrawGrid Picture1, CS
'*************************************
died = False
'set up the game
ReDim Part(0)
Part(0).X = 0
Part(0).Y = 0
FX = Int(Rnd * X)
FY = Int(Rnd * Y)
'go to main loop
bRunning = True
MainLoop
End Sub
Sub MainLoop()
Do While bRunning = True
Update
Draw
WAIT (50) 'increasing this number makes game slower
Loop
Unload Me
End Sub
Sub Update()
'MOVE PARTS
For i = UBound(Part) To 1 Step -1
Part(i).X = Part(i - 1).X
Part(i).Y = Part(i - 1).Y
Next i
'MOVE HEAD
Part(0).X = Part(0).X + vX
Part(0).Y = Part(0).Y + vY
'HAS HE GONE OUT OF BOUNDS ?
If Part(0).X <>= X Or Part(0).Y <>= Y Then
died = True
End If
'HAS HE CRASHED INTO HIMSELF ?
For i = 1 To UBound(Part)
If Part(i).X = Part(0).X And Part(i).Y = Part(0).Y Then
died = True
End If
Next i
'DID HE EAT FOOD ?
If Part(0).X = FX And Part(0).Y = FY Then
ReDim Preserve Part(UBound(Part) + 1)
Part(UBound(Part)).X = -CS
Part(UBound(Part)).Y = -CS
FX = Int(Rnd * X)
FY = Int(Rnd * Y)
Form1.Caption = "Parts: " & UBound(Part)
End If
'IS HE DEAD ?
If died = True Then NewGame
End Sub
Sub Draw()
'DRAW WHITENESS
Rectangle 0, 0, X * CS, Y * CS, vbWhite
'DRAW SNAKE. PARTS IN BLUE, HEAD IN GREEN
For i = 1 To UBound(Part)
Rectangle Part(i).X * CS, Part(i).Y * CS, Part(i).X * CS + CS, Part(i).Y * CS + CS, vbBlue
Next i
Rectangle Part(0).X * CS, Part(0).Y * CS, Part(0).X * CS + CS, Part(0).Y * CS + CS, vbGreen
'DRAW FOOD
Rectangle FX * CS, FY * CS, FX * CS + CS, FY * CS + CS, vbRed
DrawGrid Picture1, CS
End Sub
Sub Rectangle(X1 As Integer, Y1 As Integer, X2 As Integer, Y2 As Integer, color As Long)
Picture1.Line (X1, Y1)-(X2, Y2), color, BF
End Sub
Sub NewGame()
'SET UP NEW GAME
died = False
ReDim Part(0)
Part(0).X = 0
Part(0).Y = 0
vX = 0
vY = 0
FX = Int(Rnd * X)
FY = Int(Rnd * Y)
End Sub
Sub DrawGrid(Pic As Control, CS As Single)
'**************************************************************************
'DRAW GRID
'**************************************************************************
Dim i As Integer, Across As Single, Up As Single
Across = Pic.ScaleWidth / CS
Up = Pic.ScaleHeight / CS
For i = 0 To Across
Pic.Line (i * CS, 0)-(i * CS, Up * CS)
Next i
For i = 0 To Up
Pic.Line (0, i * CS)-(Across * CS, i * CS)
Next i
End Sub
Sub WAIT(Tim As Integer)
'**************************************************************************
'WAIT FUNCTION
'**************************************************************************
Dim LastWait As Long
LastWait = GetTickCount
Do While Tim > GetTickCount - LastWait
DoEvents
Loop
End Sub
Private Sub Picture1_KeyDown(KeyCode As Integer, Shift As Integer)
'USER KEYPRESSES HANDLED HERE
Select Case KeyCode
Case vbKeyRight
vX = 1
vY = 0
Case vbKeyLeft
vX = -1
vY = 0
Case vbKeyUp
vX = 0
vY = -1
Case vbKeyDown
vX = 0
vY = 1
End Select
End Sub
Private Sub Picture1_KeyPress(KeyAscii As Integer)
'27 is ESC. IF user presses ESC, QUIT
If KeyAscii = 27 Then bRunning = False
End Sub
Private Sub Form_Unload(Cancel As Integer)
'This function can be left out
End
End Sub
chapppter 4
Option Explicit
Dim days As Long '<-Stores the number of days elapsed from 1/1/1900 to current month and year
Dim i As Integer
Private Sub cmdGenerate_Click()
On Error GoTo Error_handle 'On error, goto to end of function
days = 0
For i = 0 To 34
Label1(i).Caption = "" 'Clear all the labels
Next i
For i = 1900 To txtYear.Text - 1
If i Mod 4 = 0 Then 'If leap year then count 366 days
days = days + 366
Else 'else 365 days
days = days + 365
End If
Next i
For i = 1 To txtMonth.Text - 1
If i = 1 Or i = 3 Or i = 5 Or i = 7 Or i = 8 Or i = 10 Or i = 12 Then 'For January,March,May....,December count 31 days
days = days + 31
ElseIf (i = 4 Or i = 6 Or i = 9 Or i = 11) Then 'For April,June,September,November count 30 days
days = days + 30
ElseIf (i = 2 And txtYear.Text Mod 4 = 0) Then 'If month is February and year is leap year count 29 days
days = days + 29
Else 'If month is February and year is not a leap year, count 28 days
days = days + 28
End If
Next i
If (i = 1 Or i = 3 Or i = 5 Or i = 7 Or i = 8 Or i = 10 Or i = 12) Then
show_calender 31 'Show calender with 31 days
ElseIf (i = 4 Or i = 6 Or i = 9 Or i = 11) Then
show_calender 30 'Show calender with 30 days
ElseIf (i = 2 And txtYear.Text Mod 4 = 0) Then
show_calender 29 'Show calender with 29 days
Else
show_calender 28 'Show calender with 28 days
End If
Error_handle:
End Sub
Private Function show_calender(n As Integer) '//<- n stores the number of days to display
Dim i, k As Integer
k = days Mod 7 'Divide days with 7, the remainder give the current day
For i = 1 To n
Label1(k).Caption = i 'Display the number in calender format
k = k + 1
If k = 35 Then k = 0
Next i
End Function
Private Sub txtMonth_Change()
End Sub
chapppter 3
Option Explicit
Private Hasil As Double
Private Const opNol = 0
Private Const opTambah = 1
Private Const opKurang = 2
Private Const opKali = 3
Private Const opBagi = 4
Private Operator As Integer
Private NilaiBaru As Boolean
' untuk menghapus karakter terakhir
Private Sub Hapus()
Dim txt As String
Dim min_len As Integer
txt = txtDisplay.Text
If Left$(txt, 1) = "-" Then
min_len =
2
Else
min_len =
1
End If
If Len(txt) > min_len Then
txtDisplay.Text = Left$(txt, Len(txt) - 1)
Else
txtDisplay.Text = "0"
End If
End Sub
' hapus angka, hasil terakhir dan operator
Private Sub cmdClear_Click()
cmdClearEntry_Click
Hasil = 0
Operator = opNol
End Sub
' hapus angka
Private Sub cmdClearEntry_Click()
txtDisplay.Text = ""
End Sub
' menambahkan koma (desimal)
Private Sub cmdKoma_Click()
If InStr(txtDisplay.Text, ".") Then
Beep
Else
If NilaiBaru Then
txtDisplay.Text = "."
"
NilaiBaru = False
Else
txtDisplay.Text = txtDisplay.Text & "."
End If
End If
End Sub
' Menghitung
Private Sub cmdSamaDengan_Click()
Dim HasilBaru As Double
If txtDisplay.Text = "" Then
HasilBaru = 0
Else
HasilBaru = CDbl(txtDisplay.Text)
End If
Select Case Operator
Case opNol
Hasil = HasilBaru
Case opTambah
Hasil = Hasil + HasilBaru
Case opKurang
Hasil = Hasil - HasilBaru
Case opKali
Hasil = Hasil * HasilBaru
Case opBagi
'Tidak bisa dibagi nol
If HasilBaru = 0 Then
MsgBox "Tidak bisa dibagi 0", vbOKOnly + vbCritical, "Kalku ERROR"
Call cmdClear_Click
Else
Hasil = Hasil / HasilBaru
End If
End Select
Operator = opNol
NilaiBaru = True
txtDisplay.Text = Format$(Hasil)
End Sub
' menuliskan angka
Private Sub cmdAngka_Click(Index As Integer)
If NilaiBaru Then
txtDisplay.Text = Format$(Index)
NilaiBaru = False
Else
txtDisplay.Text = _
txtDisplay.Text & Format$(Index)
End If
End Sub
' tombol tambah/kurang/bagi/kali
Private Sub cmdOperator_Click(Index As Integer)
cmdSamaDengan_Click
Operator = Index
NilaiBaru = True
End Sub
' merubah tanda +/-
Private Sub cmdPlusMinus_Click()
If NilaiBaru Then
txtDisplay.Text = "-"
ElseIf Left$(txtDisplay.Text, 1) = "-" Then
txtDisplay.Text = Right$(txtDisplay.Text, 2)
Else
Artikel Populer IlmuKomputer.Com
Copyright © 2005 IlmuKomputer.Com
txtDisplay.Text = "-" & txtDisplay.Text
End If
End Sub
' filter untuk angka saja yg dapat diketikkan
Private Sub Form_KeyPress(KeyAscii As Integer)
txtDisplay_KeyPress KeyAscii
End Sub
Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
txtDisplay_KeyUp KeyCode, Shift
End Sub
' supaya kursor tetap di kanan
Private Sub txtDisplay_Change()
txtDisplay.SelStart = Len(txtDisplay.Text)
End Sub
Private Sub txtDisplay_GotFocus()
txtDisplay_Change
End Sub
' untuk mengetikkan angka di keyboard
Private Sub txtDisplay_KeyPress(KeyAscii As Integer)
Dim ch As String
ch = Chr$(KeyAscii)
Select Case ch
Case "0"
cmdAngka_Click
0
Case "1"
cmdAngka_Click
1
Case "2"
cmdAngka_Click
2
Case "3"
cmdAngka_Click
3
Case "4"
cmdAngka_Click
4
Case "5"
cmdAngka_Click
5
Case "6"
cmdAngka_Click
6
Case "7"
cmdAngka_Click
7
Case "8"
cmdAngka_Click
8
Case "9"
cmdAngka_Click
9
Case "*", "x", "X"
cmdOperator_Click opKali
Case "+"
"
cmdOperator_Click opTambah
Case vbCrLf, vbCr, "="
"
cmdSamaDengan_Click
Case "-"
"
cmdOperator_Click opKurang
Case "."
"
cmdKoma_Click
Case "/"
"
cmdOperator_Click opBagi
Case "C", "c"
cmdClearEntry_Click
End Select
KeyAscii = 0
End Sub
' untuk ketikan angka di numpad
Private Sub txtDisplay_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyNumpad0
cmdAngka_Click 0
Case vbKeyNumpad1
cmdAngka_Click 1
Case vbKeyNumpad2
cmdAngka_Click 2
Case vbKeyNumpad3
cmdAngka_Click 3
Case vbKeyNumpad4
cmdAngka_Click 4
Case vbKeyNumpad5
cmdAngka_Click 5
Case vbKeyNumpad6
cmdAngka_Click 6
Case vbKeyNumpad7
cmdAngka_Click 7
Case vbKeyNumpad8
cmdAngka_Click 8
Case vbKeyNumpad9
cmdAngka_Click 9
Case vbKeyMultiply
cmdOperator_Click opKali
Case vbKeyAdd
cmdOperator_Click opTambah
Case vbKeySeparator
cmdSamaDengan_Click
Case vbKeySubtract
cmdOperator_Click opKurang
Case vbKeyDivide
cmdOperator_Click opBagi
Case vbKeyDecimal
cmdKoma_Click
Case vbKeyBack, vbKeyDelete
Hapus
End Select
KeyCode = 0
End Sub
Private Sub Text1_Change()
End Sub
Sabtu, 28 Februari 2009
loVE iS
salah satu kebutuhan
Dalam HidUP yang
taK perNah hilaNg.
aPalaGi cINta
ketIka daTang
deNgaN iNDaH
keMUdiaN perGi
taK meNGeNAl waKtu
Q beNci AkaN sEMua iTu
iNgIn meNdalaMi
tibA_tiBa hIlaNg enTAh
kaMAna!!!
keCEWa
itU aKAn teraSa!!
naMuN seMua itu
aDalah kehiDupan!!
yaNg aKAn
datAng!!daN
seLalu aKan
daTAng
daN perGi
deNgaN begItyu nYA!!!
hYu!!!!
Q jeNuh,
gaG da karjaan,
iSeng_iSeng,
buaT ngisi blog
yang gaG nggenaH..
hWaaaa!!
mw
ngGisi aPA y??
Q mw cerIta tApi oug,
yOw sUngKan!!
kemarin maNgkel
gaRA2 haL yaNg
gak penTing buaT
di berdeBatin!!piE ceRu lho!!
aDegan naNGgis pun Da!!
aCh,,gag jelAzz
dah aCchh!!
eRrorrr!!
Selasa, 17 Februari 2009
Q
deNgan seNyuman meNawan!!!
embUn yaNG reDup
udaRA yang seGar telah
memBuatQ seNAng
apaLagi di
temani sanG
puJangga haTi
yang SelaLu aDa
bUlaN taK naMpaK
haNya bIntaNg_biNtaNg
yaNg menYApaQ haRi nIe
seDih,,
iTu yaNg Q rasa
karEna
saNg puJanGga
tak menEmaniQ sAat nIe!!!
daN,,
sEnDiRi
tEmanI Q
saNg
puJaNgga
uNtUK
haRi
haRiQ
kelaK....
hiKZZ
T.T
Minggu, 15 Februari 2009
aQ pucinG
meNgerti tetang diriQ
untUk saAt niE
teNtaNg keGundahanQ
tentaNg hatiQ
seMuanya
taK ceMunya bisa mengrTi
mengerti
dan meNgerti
aPa yaNg Q raSa
dan
Q baYaNgkaN
teNtaNg hidup
dan kehidupan
yaNg bikIn
Q menAnggiS
daN
seDih
hikZZZZZZ