Selasa, 08 September 2009
Rabu, 29 Juli 2009
VB WITH MS ACCESS OR MS ACCESS WITH VB ?
VB WITH MS ACCESS OR MS ACCESS WITH VB ?
Membuat Koneksi Database Access menggunakan Visual Basic 6.0Untuk menjadi Programmer kita harus menguasai beberapa coding dasar dari sebuah koneksi yang sederhana. Dalam kesempatan ini saya akan membahas coding koneksi menggunakan Access yang merupakan program aplikasi database dasar yang sering digunakan di lingkungan perkantoran.
Database latihan :
Tabel barang
Kode barang
Nama barang
Harga beli
Harga jual
stok
satuan
Sebenarnya dalam pembuatan table diatas tidak terlalu diperlukan dalam pembahasan ini tetapi hanya untuk informasi belaka. Untuk memberi penjelasan kepada pembaca.Yang harus diperhatikan dalam materi ini adalah pemahaman dari coding koneksi itu sendiri.Yang pertama dilakukan adalah membuat module dahulu untuk pemanggilan koneksi dari database.Setelah membuat koneksi masukan coding sebagai berikut :
Public cn As New ADODB.Connection
Public Sub BukaDB()
Dim koneksi As String
koneksi = “provider=microsoft.jet.oledb.4.0; Data source= ” & App.Path & “\latihan.mdb;”
cn.Open koneksi
End Sub
Perhatikan kode diatas, jangan sampai asal menulis saja tetapi anda harus bisa memahaminya dengan benar, yang pertama yaitu
Public cn As New ADODB.Connection
Berfungsi untuk membuat variable bersifat public menggunakan ADODB
Dim koneksi As String
Berfungsi untuk membuat variable bersifat private bertipe string
koneksi = “provider=microsoft.jet.oledb.4.0; Data source= ” & App.Path & “\latihan.mdb;”
Merupakan kode utama dari koneksi yang dibutuhkan. Yang pertama menggunakan provider Microsoft jet oledb 4.0 yang memanggil data source/sumber data dari database latihan.mdb
cn.Open koneksi
Visual Basic ? programmer mana sih yang nggak kenal sama tool yang satu ini?
nggak usah saya sebutin apa itu Visual Basic.
Lalu Ms Access, sebuah aplikasi yang menangani database, aplikasi ini biasanya sudah satu paket dengan Microsoft Office Aplication.
Keduanya merupakan keluarga besar keturunannya Om Bill Gates. Sebagai satu keluarga maka wajarlah bila satu sama lain dapat dikombinasikan untuk saling melengkapi.
lalu mengapa aku pake judul diatas ?
Sebagai tool programming yang powerful, Visual Basic kaya akan library-library yang mendukung pengelolaan database Ms Access, meski banyak jenis data lain yang didukung (txt, xls, xml, mysql dll)
Banyak sekali aplikasi VB jadi, baik mass product maupun rancangan software house yang menggunakan Ms Access sebagai basis datanya. Dengan demikian kemampuan VB dalam mengelola database Ms Access tidak diragkan lagi.
Lalu Ms Access sendiri, adalah sebuah RDBMS (relational database management system ) yang terintegrasi dalam satu file. didalam Ms access kita sudah dapat mendefinisikan tabel, query, relation, bahkan form dan report.
Kehebatan Ms Access adalah kita dapat menyusun aplikasi secara interaktif dan profesional dengan bantuan Visual Basic for Aplication (VBA).
VBA itu apa to ? mbuh lah, lha wong saya juga nggak terlalu mudeng, tapi kayaknya tuh semacam Visual Basic yang sudah terintegrasi dengan Office Aplication (Ms Excel, Word, MS Access).
Jadi didalam Ms Access kita dapat menyisipkan kode-kode VB (misalnya di dalam form dan report) agar lebih powerfull dalam mengelola database.
Menurut saya sebenarnya ‘kekuatan’ utama Ms Access adalah VBA itu sendiri, disamping integrasi yang sangat bagus dengan aplikasi office saudaranya.
Kesimpulannya, Kita dapat membuat aplikasi pengelolaan database dengan Visual Basic yang berbasis data Ms Access, juga bisa dengan ‘pure’ Ms Access Aplication yang di bumbui dengan VBA.
lalu gimana enaknya mas djmumun ?
Relatif sih. Bagi para suhu - suhu VB mungkin tertawa dengan dengan tulisan ini. Bagaimanapun dengan Visual Basic, anda dapat membuat aplikasi yang lebih kompleks. Fitur Installer yang bagus sehingga kita bisa membuat aplikasi standalone, tanpa tergantung dengan aplikasi lain .
tapi bagi saya bila database Ms-Access (bukan data berbasis yang lain, mis mysql, oracle, dll) yang menjadi point utama, mending langsung pake Ms Access aja.
fitur - fitur nya yang interaktif dan user friendly, -apalagi dengan wizard-wizardnya - sangat membantu saya dalam membuat aplikasi secara ’sedap sekejap’.
Kalo masih kurang puas dengan wizard yang ada (biasa nih.. penyakit) anda dapat mengoprek dengan memberi kode - kode VBA.
Buka aja Visual Basic Editor, silahkan tuliskan kode - kode (kebanyakan saya sih cuman kopi paste . . . ), dan lihatlah aplikasi ms access anda nggak kalah dengan yang buatan Visual Basic.
kendalanya mungkin dalam distribusinya.
komputer pemakai musti terinstall minimal Microsoft Access Runtime atau Microsoft Office profesional
Membuat Koneksi Database Access menggunakan Visual Basic 6.0Untuk menjadi Programmer kita harus menguasai beberapa coding dasar dari sebuah koneksi yang sederhana. Dalam kesempatan ini saya akan membahas coding koneksi menggunakan Access yang merupakan program aplikasi database dasar yang sering digunakan di lingkungan perkantoran.
Database latihan :
Tabel barang
Kode barang
Nama barang
Harga beli
Harga jual
stok
satuan
Sebenarnya dalam pembuatan table diatas tidak terlalu diperlukan dalam pembahasan ini tetapi hanya untuk informasi belaka. Untuk memberi penjelasan kepada pembaca.Yang harus diperhatikan dalam materi ini adalah pemahaman dari coding koneksi itu sendiri.Yang pertama dilakukan adalah membuat module dahulu untuk pemanggilan koneksi dari database.Setelah membuat koneksi masukan coding sebagai berikut :
Public cn As New ADODB.Connection
Public Sub BukaDB()
Dim koneksi As String
koneksi = “provider=microsoft.jet.oledb.4.0; Data source= ” & App.Path & “\latihan.mdb;”
cn.Open koneksi
End Sub
Perhatikan kode diatas, jangan sampai asal menulis saja tetapi anda harus bisa memahaminya dengan benar, yang pertama yaitu
Public cn As New ADODB.Connection
Berfungsi untuk membuat variable bersifat public menggunakan ADODB
Dim koneksi As String
Berfungsi untuk membuat variable bersifat private bertipe string
koneksi = “provider=microsoft.jet.oledb.4.0; Data source= ” & App.Path & “\latihan.mdb;”
Merupakan kode utama dari koneksi yang dibutuhkan. Yang pertama menggunakan provider Microsoft jet oledb 4.0 yang memanggil data source/sumber data dari database latihan.mdb
cn.Open koneksi
Visual Basic ? programmer mana sih yang nggak kenal sama tool yang satu ini?
nggak usah saya sebutin apa itu Visual Basic.
Lalu Ms Access, sebuah aplikasi yang menangani database, aplikasi ini biasanya sudah satu paket dengan Microsoft Office Aplication.
Keduanya merupakan keluarga besar keturunannya Om Bill Gates. Sebagai satu keluarga maka wajarlah bila satu sama lain dapat dikombinasikan untuk saling melengkapi.
lalu mengapa aku pake judul diatas ?
Sebagai tool programming yang powerful, Visual Basic kaya akan library-library yang mendukung pengelolaan database Ms Access, meski banyak jenis data lain yang didukung (txt, xls, xml, mysql dll)
Banyak sekali aplikasi VB jadi, baik mass product maupun rancangan software house yang menggunakan Ms Access sebagai basis datanya. Dengan demikian kemampuan VB dalam mengelola database Ms Access tidak diragkan lagi.
Lalu Ms Access sendiri, adalah sebuah RDBMS (relational database management system ) yang terintegrasi dalam satu file. didalam Ms access kita sudah dapat mendefinisikan tabel, query, relation, bahkan form dan report.
Kehebatan Ms Access adalah kita dapat menyusun aplikasi secara interaktif dan profesional dengan bantuan Visual Basic for Aplication (VBA).
VBA itu apa to ? mbuh lah, lha wong saya juga nggak terlalu mudeng, tapi kayaknya tuh semacam Visual Basic yang sudah terintegrasi dengan Office Aplication (Ms Excel, Word, MS Access).
Jadi didalam Ms Access kita dapat menyisipkan kode-kode VB (misalnya di dalam form dan report) agar lebih powerfull dalam mengelola database.
Menurut saya sebenarnya ‘kekuatan’ utama Ms Access adalah VBA itu sendiri, disamping integrasi yang sangat bagus dengan aplikasi office saudaranya.
Kesimpulannya, Kita dapat membuat aplikasi pengelolaan database dengan Visual Basic yang berbasis data Ms Access, juga bisa dengan ‘pure’ Ms Access Aplication yang di bumbui dengan VBA.
lalu gimana enaknya mas djmumun ?
Relatif sih. Bagi para suhu - suhu VB mungkin tertawa dengan dengan tulisan ini. Bagaimanapun dengan Visual Basic, anda dapat membuat aplikasi yang lebih kompleks. Fitur Installer yang bagus sehingga kita bisa membuat aplikasi standalone, tanpa tergantung dengan aplikasi lain .
tapi bagi saya bila database Ms-Access (bukan data berbasis yang lain, mis mysql, oracle, dll) yang menjadi point utama, mending langsung pake Ms Access aja.
fitur - fitur nya yang interaktif dan user friendly, -apalagi dengan wizard-wizardnya - sangat membantu saya dalam membuat aplikasi secara ’sedap sekejap’.
Kalo masih kurang puas dengan wizard yang ada (biasa nih.. penyakit) anda dapat mengoprek dengan memberi kode - kode VBA.
Buka aja Visual Basic Editor, silahkan tuliskan kode - kode (kebanyakan saya sih cuman kopi paste . . . ), dan lihatlah aplikasi ms access anda nggak kalah dengan yang buatan Visual Basic.
kendalanya mungkin dalam distribusinya.
komputer pemakai musti terinstall minimal Microsoft Access Runtime atau Microsoft Office profesional
Rabu, 22 Juli 2009
SISTEM INFORMASI MANAJEMEN
Pengertian SISTEM INFORMASI MANAJEMEN adalah:
Sistem informasi adalah sekumpulan hardware,software,brainware,prosedur dan atau aturan yang diorganisirkan secara integral untuk mengolah data menjadi informasi yang bermanfaat guna memecahkan masalah dan pengambilan keputusan.
Komponen Sistem Informasi :
- Perangkat keras (hardware)
- Perangkat lunak (software) atau program
- Prosedur
- Orang
- Basis data (database)
- Jaringan komputer dan komunikasi data
3 MACAM ARSITEKTUR
1. Arsitektur Tersentralisasi
Suatu proses pelayanan informasi yang dikelola secara terpusat
2. Arsitektur Terdistribusi
Suatu proses pelayanan informasi yang dikelola secara tersebar
3. Arsitektur Client <-> Server
Suatu proses pelayanan informasi yang database utama dikelola Server sedangkan proses analisis lebih lanjut dilakukan oleh Client
Sistem informasi adalah sekumpulan hardware,software,brainware,prosedur dan atau aturan yang diorganisirkan secara integral untuk mengolah data menjadi informasi yang bermanfaat guna memecahkan masalah dan pengambilan keputusan.
Komponen Sistem Informasi :
- Perangkat keras (hardware)
- Perangkat lunak (software) atau program
- Prosedur
- Orang
- Basis data (database)
- Jaringan komputer dan komunikasi data
3 MACAM ARSITEKTUR
1. Arsitektur Tersentralisasi
Suatu proses pelayanan informasi yang dikelola secara terpusat
2. Arsitektur Terdistribusi
Suatu proses pelayanan informasi yang dikelola secara tersebar
3. Arsitektur Client <-> Server
Suatu proses pelayanan informasi yang database utama dikelola Server sedangkan proses analisis lebih lanjut dilakukan oleh Client
Kamis, 21 Mei 2009
'the following constants are used to give the lights a certain color
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
Kamis, 19 Maret 2009
Private Declare Function GetTickCount Lib "kernel32" () As Long 'this function lets us not use timer'timers are bad :)
'main body... each part of the snake has X and YPrivate Type PartX As IntegerY As IntegerEnd Type
'Dynamic array to store part coordinatesDim Part() As Part
'Velocity in X and Y direction of the snakeDim vX As Integer, vY As IntegerDim i As Integer 'for loopsDim CS As Single 'cell size
Dim FX As Integer, FY As Integer 'food coordinatesDim X As Integer, Y As Integer
Dim bRunning As Boolean, died As Boolean
Private Sub Form_Load()Randomize 'random generation
'Initialize controls******************Picture1.BackColor = vbWhitePicture1.ScaleMode = 3 'pixels
CS = 20 'cell size in pixelsX = Int(Picture1.ScaleWidth / CS)Y = Int(Picture1.ScaleHeight / CS)
Picture1.AutoRedraw = TruePicture1.ScaleWidth = X * CSPicture1.ScaleHeight = Y * CS
Me.WindowState = 2Me.Show
DrawGrid Picture1, CS'*************************************
died = False'set up the gameReDim Part(0)Part(0).X = 0Part(0).Y = 0
FX = Int(Rnd * X)FY = Int(Rnd * Y)'go to main loopbRunning = TrueMainLoopEnd Sub
Sub MainLoop()Do While bRunning = True Update Draw WAIT (50) 'increasing this number makes game slowerLoop
Unload MeEnd Sub
Sub Update()'MOVE PARTSFor i = UBound(Part) To 1 Step -1 Part(i).X = Part(i - 1).X Part(i).Y = Part(i - 1).YNext i
'MOVE HEADPart(0).X = Part(0).X + vXPart(0).Y = Part(0).Y + vY
'HAS HE GONE OUT OF BOUNDS ?If Part(0).X <>= X Or Part(0).Y <>= Y Thendied = TrueEnd 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 Thendied = TrueEnd IfNext 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 NewGameEnd 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, CSEnd 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, BFEnd Sub
Sub NewGame()'SET UP NEW GAMEdied = False
ReDim Part(0)Part(0).X = 0Part(0).Y = 0
vX = 0vY = 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 iEnd Sub
Sub WAIT(Tim As Integer) '************************************************************************** 'WAIT FUNCTION '************************************************************************** Dim LastWait As Long LastWait = GetTickCount Do While Tim > GetTickCount - LastWait DoEvents LoopEnd Sub
Private Sub Picture1_KeyDown(KeyCode As Integer, Shift As Integer)'USER KEYPRESSES HANDLED HERESelect Case KeyCodeCase vbKeyRightvX = 1vY = 0Case vbKeyLeftvX = -1vY = 0Case vbKeyUpvX = 0vY = -1Case vbKeyDownvX = 0vY = 1End SelectEnd Sub
Private Sub Picture1_KeyPress(KeyAscii As Integer)'27 is ESC. IF user presses ESC, QUITIf KeyAscii = 27 Then bRunning = FalseEnd Sub
Private Sub Form_Unload(Cancel As Integer)'This function can be left outEndEnd Sub
'main body... each part of the snake has X and YPrivate Type PartX As IntegerY As IntegerEnd Type
'Dynamic array to store part coordinatesDim Part() As Part
'Velocity in X and Y direction of the snakeDim vX As Integer, vY As IntegerDim i As Integer 'for loopsDim CS As Single 'cell size
Dim FX As Integer, FY As Integer 'food coordinatesDim X As Integer, Y As Integer
Dim bRunning As Boolean, died As Boolean
Private Sub Form_Load()Randomize 'random generation
'Initialize controls******************Picture1.BackColor = vbWhitePicture1.ScaleMode = 3 'pixels
CS = 20 'cell size in pixelsX = Int(Picture1.ScaleWidth / CS)Y = Int(Picture1.ScaleHeight / CS)
Picture1.AutoRedraw = TruePicture1.ScaleWidth = X * CSPicture1.ScaleHeight = Y * CS
Me.WindowState = 2Me.Show
DrawGrid Picture1, CS'*************************************
died = False'set up the gameReDim Part(0)Part(0).X = 0Part(0).Y = 0
FX = Int(Rnd * X)FY = Int(Rnd * Y)'go to main loopbRunning = TrueMainLoopEnd Sub
Sub MainLoop()Do While bRunning = True Update Draw WAIT (50) 'increasing this number makes game slowerLoop
Unload MeEnd Sub
Sub Update()'MOVE PARTSFor i = UBound(Part) To 1 Step -1 Part(i).X = Part(i - 1).X Part(i).Y = Part(i - 1).YNext i
'MOVE HEADPart(0).X = Part(0).X + vXPart(0).Y = Part(0).Y + vY
'HAS HE GONE OUT OF BOUNDS ?If Part(0).X <>= X Or Part(0).Y <>= Y Thendied = TrueEnd 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 Thendied = TrueEnd IfNext 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 NewGameEnd 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, CSEnd 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, BFEnd Sub
Sub NewGame()'SET UP NEW GAMEdied = False
ReDim Part(0)Part(0).X = 0Part(0).Y = 0
vX = 0vY = 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 iEnd Sub
Sub WAIT(Tim As Integer) '************************************************************************** 'WAIT FUNCTION '************************************************************************** Dim LastWait As Long LastWait = GetTickCount Do While Tim > GetTickCount - LastWait DoEvents LoopEnd Sub
Private Sub Picture1_KeyDown(KeyCode As Integer, Shift As Integer)'USER KEYPRESSES HANDLED HERESelect Case KeyCodeCase vbKeyRightvX = 1vY = 0Case vbKeyLeftvX = -1vY = 0Case vbKeyUpvX = 0vY = -1Case vbKeyDownvX = 0vY = 1End SelectEnd Sub
Private Sub Picture1_KeyPress(KeyAscii As Integer)'27 is ESC. IF user presses ESC, QUITIf KeyAscii = 27 Then bRunning = FalseEnd Sub
Private Sub Form_Unload(Cancel As Integer)'This function can be left outEndEnd Sub
Senin, 16 Maret 2009
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
Langganan:
Postingan (Atom)