Upload presentasi
Presentasi sedang didownload. Silahkan tunggu
1
Bahasa Pemrograman Gambas
Pertemuan 11 Bahasa Pemrograman Gambas
2
Gambas Software ini merupakan tools yang digunakan untuk membuat program aplikasi baik itu berbasis science maupun database pada Sistem operasi linux, bersifat open source
3
Tampilan awal Gambas
4
Buat Project Baru, dari menu utama lalu buka new project.
Isi dengan nama administrasi dengan title siswa Aktifkan komponen yang diperlukan adalah sebagai berikut :
5
gb gb.db > untuk menghubungkan kedatabase gb.qt gb.qt.ext gb.qt.kde gb.qt.kde.html > untuk menampilkan tabel laporan dari database
6
4. Setelah komponen diaktifkan, langkah selanjutnya adalah membuat sebuah modul untuk mendeklarasikan program yang akan dibuat, caranya: ○ klik kanan pada direktori projects lalu pilih New > Module. Dengan nama Mglobal ○ Setelah itu, double klik pada mglobal untuk mengetik kode program
7
' Gambas module file PUBLIC db AS NEW Connection PUBLIC rs AS Resul t PUBLIC btn AS Button PUBLIC btnok AS String PUBLIC btnno AS String 'bagian untuk mengkoneksikan database' PUBLIC FUNCTION koneksi(host AS String, lgn AS String, pass AS String) AS Boolean
8
d b.close d b.Type = "mysql" d b.Hos t = Hos t d b.Login = lgn db.Pas sword = pass db.Open RETURN TRUE CATCH Message.Warning("Password yang anda masukkan salah", "OK") RETURN FALSE END
9
'bagian untuk menambahkan baris dan kolom'
PUBLIC SUB isi(tbv AS GridView, sql AS String) DIM i AS Float rs = d b.exec(sql) WITH rs tbv.rows.count = 0 IF .count < > 0 THEN tbv.columns.count = .fields.count tbv.rows.count = .count END IF END WITH END
10
Mendesign koneksi Server : My SQL , Host : Local Host,
Username : root, Password : “ “
11
Properti Gambar diatas
12
Properti Gambar diatas
13
Properti Gambar diatas
Form koneksi merupakan tampilan awal ketika program dijalankan. Maka kita harus mengatur form tersebut dengan cara klik kanan form tersebut lalu pilih startup class
14
Setelah form koneksi dibuat, ketiklah program berikut :
Gambas class file PUBLIC SUB Form_Open() ME.center ME.Caption = "Koneksi baru" END PUBLIC SUB ginput_KeyPress() IF Key.code = Key.enter OR Key.code = Key.return THEN SELECT CASE LAST.tag
15
CASE 1 textbox2.setfocus CASE 2 Textbox3.setfocus CASE 3 button1.setfocus END SELECT END IF END PUBLIC SUB gbtn_Click() DIM dbname AS String DIM tbname AS String DIM htable AS Table
16
SELECT CASE LAST.tag CASE 1 'tombol koneksi dbname = "administrasi" tbname = "siswa" WITH Mglobal .btnok = "&Yes" .btnno = "&No" 'periksa keabsahan user IF .koneksi(textbox1.text, textbox2.text, textbox3.text) = TRUE THEN 'membuat database jika belum tersedia IF NOT .db.Databases.Exist(dbname) THEN .db.Databases.Add(dbname) .db.Close .db.Name = dbname .db.Open
17
'membuat tabel jika belum tersedia
IF NOT .db.Tables.Exist(tbname) THEN htable = .db.Tables.Add(tbname) htable.Fields.Add("id", gb.String, 10) htable.Fields.Add("nama", gb.String, 40) htable.Fields.Add("kelamin", gb.String, 10) htable.Fields.Add("alamat", gb.String, 100) htable.PrimaryKey = ["id"] htable.Update END IF ELSE 'jika sudah tersedia database digunakan .db.Close .db.Name = dbname
18
Design Form Data
19
Kode program untuk form tersebut:
' Gambas class file arrtable[4] AS String PUBLIC sql AS String PUBLIC rs AS Result hFile AS File flname AS String
20
Kode program untuk form tersebut:
' bagian untuk menampilkan nama field SUB tampilkan() WITH gdv .Rows.count = 0 .Columns.Count = 4 .Columns[0].Text = "ID" .Columns[1].Text = "Nama" .Columns[2].text = "Jenis Kelamin" .Columns[3].Text = "Alamat" END WITH Mglobal.isi(gdv, "select*from siswa order by id") END
21
' bagian untuk mengatur tombol
SUB aturtombol(tambah AS Boolean, ubah AS Boolean, hapus AS Boolean, simpan AS Boolean, batal AS Boolean, cari AS Boolean) btntambah.Enabled = tambah btnubah.Enabled = ubah btnhapus.Enabled = hapus btnsimpan.Enabled = simpan btnbatal.Enabled = batal btncari.Enabled = cari END
22
' bagian untuk mengatur textbox
SUB aturtxt(id AS Boolean, nama AS Boolean, kelamin AS Boolean, alamat AS Boolean, cari AS Boolean) txtid.Enabled = id txtnama.Enabled = nama ComboBox1.Enabled = kelamin txtalamat.Enabled = alamat txtcari.Enabled = cari END ' bagian untuk menghilangkan tulisan di area textbox SUB bersih() txtid.Text = ""
23
'ComboBox1.Text = "Pilih Salah Satu"
txtnama.Text = "" txtalamat.Text = "" END PUBLIC SUB Form_Open() DIM i AS Float aturtombol(TRUE, FALSE, FALSE, FALSE, FALSE, TRUE) aturtxt(FALSE, FALSE, FALSE, FALSE, TRUE) gdv.Enabled = TRUE ComboBox1.Add("Laki-Laki") ComboBox1.Add("Perempuan")
24
flname = User.home & "/datasiswa.html"
ME.center ME.Caption = "Data Siswa" tampilkan() END PUBLIC SUB Form_Close() 'hapus laporan ketika form ditutup IF Exist(flname) THEN KILL flname
25
' bagian untuk menampilkan isi tabel kedalam gridview
PUBLIC SUB gdv_Data(Row AS Integer, column AS Integer) arrtable[0] = "id" arrtable[1] = "nama" arrtable[2] = "kelamin WITH Mglobal .rs.MoveTo(row) gdv.Data.Text = Str(.rs[arrtable[column]]) END WITH END
26
'event gridview saat diklik
PUBLIC SUB gdv_Click() txtid.Text = gdv[gdv.Row, 0].Text txtnama.Text = gdv[gdv.Row, 1].Text ComboBox1.Text = gdv[gdv.Row, 2].Text txtalamat.Text = gdv[gdv.Row, 3].Text aturtombol(TRUE, TRUE, TRUE, FALSE, FALSE, TRUE) aturtxt(TRUE, TRUE, TRUE, TRUE, TRUE) CATCH Message.Info("Data masih kosong", "OK") END
27
PUBLIC SUB btntambah_Click()
aturtombol(FALSE, FALSE, FALSE, TRUE, TRUE, FALSE) aturtxt(TRUE, TRUE, TRUE, TRUE, FALSE) bersih() gdv.Enabled = FALSE END PUBLIC SUB btnsimpan_Click() IF txtid.Text = "" OR txtnama.Text = "" OR txtalamat.Text = "" THEN Message.Warning("Data belum lengkap", "OK") ELSE WITH Mglobal
28
'perintah sql untuk memasukkan data kedalam database
sql = "insert into siswa values ('" & txtid.Text & "', '" & txtnama.Text & "', '" & ComboBox1.Text & "','" & txtalamat.Text & "')" .db.Exec(sql) 'jalankan perintah sql diatas tampilkan() gdv.Enabled = TRUE aturtombol(TRUE, FALSE, FALSE, FALSE, FALSE, TRUE) txtcari.Enabled = TRUE END WITH END IF CATCH
29
Message.Info("Data sudah ada dalam database", "OK")
aturtombol(TRUE, FALSE, FALSE, FALSE, FALSE, TRUE) txtcari.Enabled = TRUE bersih() gdv.Enabled = TRUE END PUBLIC SUB btnhapus_Click() sql = "delete from siswa where id ='" & txtid.Text & "'" Mglobal.db.Exec(sql) btnhapus.Enabled = FALSE btnubah.Enabled = FALSE tampilkan()
30
PUBLIC SUB btnbatal_Click()
aturtombol(TRUE, FALSE, FALSE, FALSE, FALSE, TRUE) aturtxt(FALSE, FALSE, FALSE, FALSE, TRUE) bersih() gdv.enabled = TRUE END PUBLIC SUB btnubah_Click() sql = "update siswa set id ='" & txtid.Text & "', nama ='" & txtnama.Text & "', kelamin ='" & ComboBox1.Text & "', alamat ='" & txtalamat.Text & "' where id ='" & txtid.Text & "'" Mglobal.db.Exec(sql) tampilkan()
31
PUBLIC SUB btncari_Click()
aturtxt(TRUE, TRUE, TRUE, TRUE, TRUE) sql = "select * from siswa where id ='" & txtcari.Text & "'" rs = Mglobal.db.Exec(sql) txtid.Text = rs!id txtnama.Text = rs!nama ComboBox1.Text = rs!kelamin txtalamat.Text = rs!alamat CATCH Message.Info("Data tidak ditemukan", "OK") END
32
PUBLIC SUB txtcari_GotFocus()
txtcari.Text = "" END PUBLIC SUB txtcari_LostFocus() PUBLIC SUB btnkeluar_Click() Mglobal.db.Close ME.Close PUBLIC SUB gbtn_Click() SELECT CASE LAST.tag CASE 1 'tampilkan kelayar printit(FALSE) CASE 2 'cetak ke printer printit(TRUE) END SELECT
33
END PUBLIC SUB header(prn AS Boolean) 'membuat tabel dengan perintah html +gambas PRINT #hFile, "<html >" PRINT #hFile, "<head > <title >Contoh Data Siswa oleh insan Sutejo < / title> < / head >" PRINT #hFile, "<body topmargin ='0' leftmargin ='0'" IF prn = TRUE THEN PRINT #hFile, " onload ='window.print()'" PRINT #hFile, ">" PRINT #hFile, "<table border ='1' width ='500' cellpadding ='4' cellspacing ='0'>" PRINT #hFile, " < tr >" PRINT #hFile, " < t d colspan ='4' align ='center'>" < h3 >Daftar Nama Siswa < / h3 >" < / t d >"
34
PRINT #hFile, " < / tr >"
PRINT #hFile, " < tr > < td > < / t d > < / tr >" PRINT #hFile, " < tr >" PRINT #hFile, " < t d width ='15%' align ='center'> <b >Nomor Induk < / b > < / t d >" < t d align ='center'> <b >Nama < / b > < / t d >" < t d align ='center'> <b >Jenis Kelamin < / b > < / t d >" < t d align ='center'> <b >Alamat < / b > < / t d >" END
35
'tambah kolom di tabel laporan
PUBLIC SUB content(p1 AS String, p2 AS String, p3 AS String, p4 AS String) PRINT #hFile, " < tr >" PRINT #hFile, " < t d >" & p1 & "< /td >" < t d >" & p2 & "< /td >" < t d >" & p3 & "< /td >" < t d >" & p4 & "< /td >" PRINT #hFile, " < / tr >" END PUBLIC SUB footer() PRINT #hFile, "< /table >" PRINT #hFile, "< /body >" PRINT #hFile, "< / html >"
36
PUBLIC SUB printit(prn AS Boolean)
DIM i AS Float WITH mglobal .rs = .db.exec("select * from siswa order by id") IF .rs.count < > 0 THEN IF Exist(flname) THEN KILL flname OPEN flname FOR WRITE CREATE AS #hFile 'tampilkan header disini
37
header(prn) i = 0 WHILE i < .rs.count 'tampilkan semua data disini content(CStr(.rs!id), CStr(.rs!nama), CStr(.rs!kelamin), CStr(.rs!alamat)) i = i + 1 .rs.MoveNext WEND 'tampilkan footer disini footer CLOSE #hFile 'menampilkan laporan Fpreview.SetPath(flname) Fpreview.ShowModal ENDIF END WITH END
38
Design form preview, aturlah setiap elemen seperti pada gambar berikut :
39
Setelah form dibuat, ketik program dibawah ini :
' Gambas class file PUBLIC SUB Form_Open() ME.center END PUBLIC SUB Form_Resize() webbrowser1.Move(0, 36, ME.ClientWidth, ME.ClientHeight - 70) button1.Move(ME.clientwidth - 88, ME.ClientHeight - 32, 88, 32) PUBLIC SUB Button1_Click() ME.close PUBLIC SUB SetPath(sPath AS String) WebBrowser1.Path = sPath
40
LATIHAN SOAL S O 1. Software gambas merupakan Bhs Pemrograman yang berorientasi, a. objek b. Prosedural c. System d. Terstruktur e. salah semua 2. Database yang didukung oleh gambas adalah a. My SQL d. SQL-Lite b. Postgree e. MS Access c. Semua salah
41
2. Database yang didukung oleh gambas adalah
a. My SQL d. SQL-Lite b. Postgree e. MS Access c. Semua salah Dalam Slaxware, proses pembuatan distro disebut dengan : a.Remastering d. B dan C Benar b.Recompiling e. B dan C Salah c.Repositori
42
Dalam Slaxware, proses pembuatan distro disebut dengan :
a.Remastering d. B dan C Benar b.Recompiling e. B dan C Salah c.Repositori Type data yang didukung oleh gambas a. String d. Bolean b. Text e. Number c. A & D Benar
43
Type data yang didukung oleh gambas
a. String d. Bolean b. Text e. Number c. A & D Benar Membuat tampilan form message dalam gambas, adalah a.Message Box b.Message info c. Message tools d. Semua salah e. semua Benar
44
Membuat tampilan form message dalam gambas, adalah
a.Message Box b.Message info c. Message tools d. Semua salah e. semua Benar 1. Software gambas merupakan Bhs Pemrograman yang berorientasi, a. objek b. Prosedural c. System d. Terstruktur e. salah semua
Presentasi serupa
© 2024 SlidePlayer.info Inc.
All rights reserved.