Prokom Tugas 2

March 18th, 2015

4.1   Membuat menu box

4.2   Menyusun koordinat penulisan pada menu box

Koordinat penulisan meliputi format box yang akan ditampilkan beserta warnanya.

Uses “CONSOLE”

%Menu_Color_Normal = 7
%Menu_Color_Highlight = 46

%Menu_xStart = 29
%Menu_yStart = 5
%Menu_LineLen = 30

‘—Define an array to store manu items
Dim MyMenu(5) As String

4.3   Mengisi judul kolom pembuka pada menu utama

‘—Some screen preparation
Console_PrintAt(“GROUP 4” , 71, 3, %Menu_Color_Normal)
Console_PrintAt(“Assalamualaikum friend!” , 29, 5, %Menu_Color_Normal)
Console_PrintAt(Repeat$(14, “Í”) , 29, 6, %Menu_Color_Normal)

 

4.4 Tulis perintah untuk meng-input data sesuai dengan keinginan

—Print main menu

Dim Count As Long
For Count = 1 To UBound(MyMenu)
Menu_Print(MyMenu(Count), Count, %Menu_Color_Normal)
Next

 

4.5 Mengatur perintah untuk mengendalikan program dan mengatur cara untuk mengakhiri program yang dibuat

 

‘—Handle menu
Menu_Handle

‘—Operation finished
Console_Cls
Console_PrintAt(“Suwun yo rek! Teken maneh nek kate metu. Wassalamualaikum.” , 1, 1, 14)
Console_WaitKey(0)

4.6 Berikut adalah pengaturan fungsi yang mmengatur menu

‘—————————————————————————–
‘—This is the main function that handle the menu
‘—Add here what you need
‘—————————————————————————–
Function Menu_Handle()
Local sKey As String
Local CurrentItem As Long
Local Finish As Long
Local FunctionName As String

‘—First menu item highlighed
CurrentItem = 1
Menu_Print(MyMenu(CurrentItem), CurrentItem, %Menu_Color_HighLight)

‘—Loop until exit condition is verified
While Finish = %FALSE

‘—Read keyboard input
sKey = Console_WaitKey(0)

‘—Write returned key just to see it
Console_PrintAt(LSet$(sKey, 20) , 1, 1, 7)

 

4.7 Pengaturan untuk menampilkan tombol yang kita tekan

‘—Handle returned string
Select Case sKey
Case “[UP]”
‘—Print current menu as normal
Menu_Print(MyMenu(CurrentItem), CurrentItem, %Menu_Color_Normal)
‘—Decrement cursor
Decr CurrentItem
If CurrentItem <= 0 Then CurrentItem = UBound(MyMenu)
‘—-Print current menu as highlighted
Menu_Print(MyMenu(CurrentItem), CurrentItem, %Menu_Color_Highlight)
Case “[DOWN]”
‘—Print current menu as normal
Menu_Print(MyMenu(CurrentItem), CurrentItem, %Menu_Color_Normal)
‘—Increment cursor
Incr CurrentItem
If CurrentItem > UBound(MyMenu) Then CurrentItem = 1
‘—-Print current menu as highlighted
Menu_Print(MyMenu(CurrentItem), CurrentItem, %Menu_Color_Highlight)
Case “[RETURN]”
‘—Here it is. User choose some action. By default latest items is exit
‘—But you can change this behave
If CurrentItem = UBound(MyMenu) Then Finish = %TRUE

‘—Action can be stored in menu text as second items separated by |
FunctionName = Trim$(Parse$(MyMenu(CurrentItem), “|”, 2))
‘—If not null then try to call dynamically the relevant function
If Function_Exists(FunctionName) Then
Call FunctionName
End If
Case “[ESC]”
Finish = %TRUE
End Select

Wend
End Function

 

4.8 Meng-input­ data yang kita ingin jadikan sebagai item pada menu utama.

Dan kita dapat memasukkan data yang akan muncul pada Message Box (mengisi pada TestMyMenuFunction) sesuai keinginan kita, dengan memisahkannya dengan symbol “ | “

 

‘—Set menu items. You can separate menu string and menu function calling using |
MyMenu( 1) = “Pembukaan…|TestMyMenuFunction1”
MyMenu( 2) = “Anggota no.1|TestMyMenuFunction2”
MyMenu( 3) = “Anggota no.2|TestMyMenuFunction3”
MyMenu( 4) = “Anggota no.3|TestMyMenuFunction4”
MyMenu( 5) = “Quit”

4.9 Kemudian kita dapat mengisi apapun dan menambahkan Message Box sesuai keinginan kita, dan juga dapat memasukkan berbagai input yang akan muncul dalam Message Box.

‘—————————————————————————–
‘—Used to print menu
‘—————————————————————————–
Function Menu_Print(sText As String, MenuItem As Long, MenuColor As Long) As Long
Console_PrintAt( _
Format$(MenuItem, “00”) & ” – ” & LSet$(Parse$(sText,”|”,1), %Menu_LineLen), _
%Menu_xStart, _
%Menu_yStart + MenuItem, _
MenuColor)
End Function

Function TestMyMenuFunction1()
MsgBox 1, “Hi kami kelompok 5!”
MsgBox 2, “Berikut ini adalah program percobaan kami…”
MsgBox 3, “Kami menggunakan Bahasa Pemrograman ThinBasic.”
MsgBox 4, “Berikut sekilas pandang anggota kelompok kami.”
End Function

Function TestMyMenuFunction2()
MsgBox 1, “Hai kawan-kawan!”
MsgBox 2, “Namaku Dhio Bagus Prabowo”
MsgBox 3, “Saya bisa dipanggil Dhio, saya asal Malang.”
MsgBox 4, “Motto hidup saya : Maju Terus Pantang Menyerah!”
End Function

Function TestMyMenuFunction3()
MsgBox 1, “Halo sobat!”
MsgBox 2, “Namaku Muhamad Farhan Diesa”
MsgBox 3, “Kalian boleh panggil saya Farhan, saya dari Jakarta.”
MsgBox 4, “Motto hidup saya : Lakukan yang Terbaik untuk Allah!”
End Function

Function TestMyMenuFunction4()
MsgBox 1, “What’s up, bro!”
MsgBox 2, “Kenalin nih, namaku Robby Putra”
MsgBox 3, “Orang-orang biasa panggil saya Putra, asal dari Jakarta.”
MsgBox 4, “Motto hidup saya : Kejarlah kesempurnaan, maka kesuksesan akan menghampirimu!”
End Function

 

Tampilan program yang dibuat

Untitled

Hello world!

March 8th, 2015

Selamat datang di Student Blogs. Ini adalah posting pertamaku!