Skip to main content

Posts

Showing posts with the label belajar lazarus

Aplikasi Demo Penggunaan Memo ComboBox ListBox dan CheckBox (Belajar Lazarus #14)

Mempelajari Listbox yang Owner-Draw Lazarus telah kita bahas pada artikel sebelumnya, sekarang mari kita buat Aplikasi Demo Penggunaan Memo ComboBox ListBox dan CheckBox . CheckBox memberi dua pilihan (bahkan tiga pilihan) kepada pemakai, properti yang berkaitan dengan pilihan pada CheckBox yaitu: Ubah property Checked menjadi True agar CheckBox dipilih secara default. Ubah AllowGrayed menjadi True agar CheckBox mempunyai 3 pilihan, yaitu checked , unchecked dan grayed . Property State menyatakan apakah CheckBox dalam keadaan checked ( cbChecked ), unchecked ( cbUnchecked ), atau grayed ( cbGrayed ). Memo dipakai untuk memasukkan data yang lebih dari satu barus. ListBox menampilkan daftar dan Anda dapat memilih item-itemnya: Property Items dibakai untuk mengisi pilihan-pilihan yang mungkin. ItemIndex menyatakan item yang dipilih.  MultiSelect menyatakan apakah dapat memilih lebih dari satu pilihan pada saat yang bersamaan. Sorted menyatakan apakah daftar terurut sec...

Mempelajari Listbox yang Owner-Draw Lazarus (Belajar Lazarus #13)

Bagaimana sudah dipahami betul artikel sebelumnya tentang Menambah Item ListBox ? Sekarang kita akan mempelajari Listbox yang Owner-Draw pada Lazarus. Tehnik owner-draw adalah cara penggambaran sebuah kontrol yang dilakukan oleh pemilik (owner) dari kontrol tersebut. Biasanya owner-nya adalah form. Pada komponen ListBox, anda dapat menyatakan cara ini dengan mengatur properti Style yang menentukan apakah listbox bersifat standar atau owner-draw atau virtual. ListBox standar menampilkan data string. ListBox owner-draw dapat menampilkan gambar grafik, dan anda dapat menampilkan item dengan cara yang tidak standar. Untuk itu anda harus menuliskan program untuk menampilkan item pada ListBox. ListBox vortual artrinya item-item diberikan dinamik menggunakan event handler. Desain visual Listbox Owner-Draw Buat desain seperti gambar diatas: Form1 Caption: Listbox Owner Draw ListBox1 Name: LBWarna Style:  OwnerDrawFixed Font: Ikuti langkah seperti gambar di bawah ini, Fon...

Menambah Item ListBox pada Lazarus (Belajar Lazarus #12)

Setelah sebelumnya kita mempelajari Penggunaan komponen ListBox pada Lazarus Free Pascal . Sekarang kita akan membahas bagaimana cara Menambah Item Listbox pada Lazarus. Untuk menambah item listbox ini kita akan menggunakan 2 metode, yaitu dengan cara menambah dimana hasilnya nanti akan ditambahkan di baris paling bawah dan cara menyisipkan dimana hasilnya nanti akan diisipkan di atas item yang dipilih. Untuk praktek silahkan buat aplikasi baru dan beri nama additemlistbox.lpi dan unitnya beri nama uadditemlistbox.pas LANGKAH DESAIN VISUAL Form1 Name: FAddListbox Caption: Tambah Item Listbox Label1 Caption: Data Edit1 Name: EData Text: ListBox1 Name: LBDaftarKota Button1 Name: BTambah Caption: Tambah Button2 Name: BSisip Caption: Sisip Sehingga tampilannya seperti gambar dibawah ini: LANGKAH NON VISUAL / CODING BTambah Event OnClick procedure TFAddListbox.BTambahClick(Sender: TObject); begin   LBDaftarKota.Items.Add(EData.Text); end; BSi...

Cara Merubah Awal Kata Menjadi Kapital pada LAzarus

Setelah sebelumnya kita mempelajari cara membalik urutan karakter pada string, sekarang kita coba membuat program mengubah huruf pada awal kata menjadi kapital. Pertama mari kita buat fungsi Capword seperti di bawah ini. Dengan fungsi ini anda dapat mengubah karakter pertama dari suatu kata menjadi huruf kapital. Fungsi Capword hanya mempunyai satu parameter, yaitu string yang akan diubah. type   { TForm1 }   TForm1 = class(TForm)     function CapWord(teks:string):string; //tulis disini kodenya private Selanjutnya pada bagian implementation tuliskan kode berikut: //fungsi Capitalize each Word function TForm1.CapWord(teks:string):string; var   i : integer;   s : string; begin   s:=Uppercase(teks[1]);   for i:=2 to length(teks) do     if (teks[i-1] in [' ','?','!',',',':',';','.']) then s:=s+uppercase(teks[i]) else       s:=s+lowercase(teks[i]);   result:=s; end; Selanjutnya ta...

Membalikkan urutan karakter pada string dengan Lazarus

Saat anda membuat aplikasi, seringkali anda harus berhubungan dengan string. Lazarus telah menyediakan banyak sekali prosedur dan fungsi yang berhubungan dengan string. Tapi ada hal-hal tertentu seperti membalik urutan karakter pada string yang tidak disediakan prosedur atau fungsinya. Sekarang mari kita coba Membalikkan urutan karakter pada string dengan Lazarus . Cara membalikkan urutan karakter dengan lazarus Buat aplikasi baru dengan nama reversestring. Selanjutnya mari kita buat fungsi baru untuk membalik urutan karakter dengan nama ReverseString. Kalau masih dalam tampilan visual (tampak Form1) tekan F12 untuk masuk ke source editor, Tulis sesudah type TForm1 = class(TForm) dan sebelum private . type   TForm1 = class(TForm)      function ReverseString(s: string):string; //tulis disini fungsinya   private Kemudian tulis di bagian implementation kode berikut: function TForm1.ReverseString(S: string):string; var    i : integer; ...

Mendisable Menu System Close pada Lazarus

Sebuah form yang normal biasanya mempunyai tiga tombol yang terletak pada bagian title bar, yaitu tombol maximize untuk menampilkan form secara penuh, tombol minimize untuk menyembunyikan form aktif ke taksbar, dan tombol close untuk menutup form. Bagaimana caranya mendisable system menu? Untuk aplikasi tertentu mungkin anda ingin "memaksa" para pengguna program anda dengan hanya dapat menutup program melalui menu yang telah anda sediakan. Dengan demikian mereka tidak dapat menutup program melalui menu close tersebut. Untuk itu anda dapat mendisable system menu tersebut. Gambar form denga system menu normal Pada properties Form1 pilih >> BorderIcon , jika gambar checlist seperti di atas yaitu biMaximize, biMinimize dan biSystemMenu centang semua (true) itu adalah konfigurasi default dari system menu pada form. Gambar Menu yang Minimeze-nya disable Untuk membuat form dengan menu minimize disable caranya pada properties Form1 pilih >> BorderIcon ...

Memperkecil ukuran file exe lazarus free pascal

Benar-benar kaget saya, setelah beberapa lama menggunakan lazarus free pascal baru hari ini tepatnya Minggu, 28 Agustus 2016 bahwa ternyata hasil file exe (executabel) yang dihasilkan sangat besar. Bayangkan saya form sederhana dengan satu komponen button saja ukuranya bisa sekitar 15 MB. Setelah mencari info di forum lazarus akhirnya saya menemukan solusi agar bisa memperkecil ukuran file EXE lazarus free pascal . Cara Memperkecil Ukuran Executable File Lazarus Pertama silahkan pilih pada menu: Project >> Project Options Atau kalau menggunakan tombol shortcut tekan saka tombol Shift+Ctrl+F11   Selanjutnya pada Compiler Option saya pilih Debuging . Saya hilangkan tanda centang pada: Generate debungging info for GDB (slower / increase exe-size) Kemudian saya tambahkan centang pada: Strip symbols from executable (-Xs) . Trus tidak lupa saya simpan dengan menekan tombol OK . Saya tekan F9 (Run) untuk menjalankan programnya, dan selanjutnya saya cek besarnya fi...

Aplikasi Mencari Hari Pasaran Jawa

Anda mau menjodohkan anak, mau ada hajatan misal kawinan, khitan, dan lain-lain, biasanya orang Jawa disamping menggunakan hari biasa, sering menggunakan hari Pasaran yang terdiri dari 5 hari, yaitu Pon, Wage, Kliwon, Legi dan Pahing. Tapi sering kali kita lupa akan hari pasaran dari tanggal lahir anak kita, atau bahkan hari pasaran tanggal lahir kita sendiri. Dulu sebelum kenal Lazarus aku biasa menggunakan tabel (dari majalah Liberty 1716, 16-31 Desember1989 ) untuk mencari hari pasaran secara manual, silahkan lihat gambar di bawah ini dan coba praktekkan: Tabel Mencari Hari dari suatu Tanggal Tabel Mencari Pasaran dari suatu Tanggal Kalau dengan cara tabel seperti gambar di atas terlalu ribet, sekarang mari kita buat aplikasi sederhana uncuk mencari Hari Pasaran Jawa, sehingga anda bisa mengetahui hadi lahir dan pasaran diri sendiri, sanak keluarga maupun teman-teman. Desain Visual.Aplikasi Mencari Hari Pasaran Jawa TForm1, dengan properties (Name: FPasaran, Caption:...

Penggunaan ListBox Lazarus Free Pascal (Belajar Lazarus #11)

Seri Belajar Lazarus yang ke-11 kali ini akan membahas Penggunaan komponen ListBox pada Lazarus Free Pascal . Komponen ListBox menampilkan sekumpulan pilihan dalam daftar yang dapat menggulung. Item-item dalam ListBox dapat dipilih, ditambah dan dihapus. Pada tutorial kali ini kita akan mempraktekkan penggunaan MessageDlg dan modal resultnya , serta penggunaan perulangan For. Silahkan dipelajari dulu jika belum memahaminya.Untuk praktek silahkan buat aplikasi baru dan beri nama listbox.lpi LANGKAH DESAIN VISUAL Form1 Name: FListbox Caption: Depot Enak Sekali Label1 Caption: Daftar Menu Label2 Caption: Menu yang dipilih ListBox1 Name: LBDaftarmenu MultiSelect: True Items:   Nasi Putih   Nasi Rawon   Nasi Soto   Tempe Goreng   Ikan Goreng   Ikan Pepes   Sate   Ayam Goreng   Ayam Panggang   Es Jeruk   Es Teh   Es Degan   Teh Hangat   Susu Soda ListBox2 Name: LBMenupilih Multi...

Perulangan Repeat-Until While-Do Lazarus Free Pascal

Perulangan Repeat ... Until dan While ... Do pada Lazarus Free Pascal mempunyai fungsi yang sama dengan perulangan For yaitu mengulang perintah yang diberikan dengan syarat tertentu. Perbedaan yang utama Perulangan Repeat-Until While-Do dengan perulangan For adalah tidak ada penambahan / pengurangan nilai secara otomatis seperti pada perulangan For, untuk itu perlu menggunakan prosedur INC dan DEC: Prosedur INC Prosedur INC berfungsi untuk menambah nilai variabel Syntax: INC(variabel) //menambah nilai kelipatan 1. atau INC(variabel,kelipatan_n) //menambah nilai kelipatan n Contoh: inc(i); //akan menambah nilai variabel i dengan kelipatan 1 inc(i,4); //akan menambah nilai variabel i dengan kelipatan 4 Prosedur DEC Prosedur DEC berfungsi untuk mengurangi nilai variabel Syntax: DEC(variabel) //mengurangi nilai kelipatan 1 atau DEC(variabel,kelipatan_n) //mengurangi nilai kelipatan n Contoh: dec(i); //akan mengurangi nilai variabel i dengan kelipatan 1 dec(i,5); /...

Penggunaan Perulangan For Lazarus Free Pascal

Penggunaan Perulangan For pada Lazarus Free Pascal ada dua jenis, yaitu perulangan dari kecil ke besar dan dari besar ke kecil. Tutorial kali ini merupakan kelanjutan dari tutorial Jenis Perulangan Lazarus Free Pascal kali ini akan dijelaskan lebih mendetail tentang penggunaan perulangan for. Pada perulangan for nilai awal dan nilai akhir ditentukan dengan menggunakan suatu variabel kontrol yang nilainya dibatasi dalam suatu range tertentu. 1. FOR ... TO ... DO Perulangan for to do adalah perulangan dari nilai kecil ke besar. Syntax: FOR (variabel_kontrol) := (nilai_awal) TO (nilai_akhir) DO Begin ...(isi_perulangan); End; 2. FOR ... DOWNTO ... DO Perulangan for downto do adalah perulangan dari nilai besar ke kecil. Syntax: FOR (variabel_kontrol) := (nilai_awal) DOWNTO (nilai_akhir) DO Begin ...(isi_perulangan); End; CONTOH PENGGUNAAN Buatlah proyek aplikasi baru dan dalam Form tambahkan komponen edit dan button sehingga nanti akan terdapat 1 form dengan nama Form...

Jenis Modal Result Button Lazarus Free Pascal

Mari kita bahas tentang Jenis Modal Result Button Lazarus Free Pascal , button / tombol yang mempunyai modal result pada Lazarus Free Pascal adalah komponen TButton, TBitBtn, sedangkan TSpeedButton tidak mempunyai modal result. Apakah Modal Result? Modal result adalah nilai kembalian dari suatu event / aksi yang kita lakukan. Contohnya jika kita menekan tombol yang mempunyai modal result mrYes, maka dia akan menghasilkan modal result mrYes jika ditekan. Seperti telah aku jelaskan di artikel sebelumnya tentang penggunaan fungsi MessageDlg , disitu dijelaskan jenis-jenis dari tombol yang akan menghasilkan modal result tertentu juga. Berikut daftar jenis tombol dan jenis modal resultnya: mbNone modal resultnya adalah mrNone yang bernilai konstanta integer 0 ; mbOk = mrOk = 1; mbCancel = mrCancel = 2; mbAbort = mrAbort = 3; mbRetry = mrRetry = 4; mbIgnore = mrIgnore = 5; mbYes = mrYes = 6; mbNo = mrNo = 7; mbAll = mrAll = 8; mbNoToAll = mrNoToAll = 9; mbYesToAll = mrYesT...

Jenis Perulangan Lazarus Free Pascal

Dalam Lazarus Free Pascal terdapat tiga jenis perulangan , yaitu perulangan FOR, perulangan WHILE dan perulangan REPEAT. Perulangan ini berguna jika kita ingin menjalankan suatu pernyataan secara berulangkali berdasarkan kriteria batas yang telah ditentukan. Yang perlu diperhatikan dalam penggunaan fungsi perulangan adalah: Tipe data dari variabel adalah Integer. Kita harus memberikan nilai awal dari variabel. Kita harus menentukan syarat perulangan. Perbedaan perulangan FOR, WHILE dan REPEAT 1. PERULANGAN FOR Syntax: FOR (variabel_kontrol) := (nilai_awal) TO (nilai_akhir) DO Begin ...(isi_perulangan); End; Perbedaan dengan perulangan yang lain: Mempunyai jumlah batas perulangan yang jelas. Syarat perulangan dicek didepan. Minimal dijalankan 1 kali. 2. PERULANGAN WHILE Syntax: WHILE (syarat_perulangan) DO Begin ...(isi_perulangan); End; Perbedaan dengan perulangan yang lain: Mempunyai jumlah perulangan tidak jelas. Syarat perulangan dicek didepan. Min...

Penggunaan MessageDlg Lazarus Free Pascal

Mari belajar Penggunaan MessageDlg pada Lazarus Free Pascal . MessageDlg berfungsi menampilkan pesan di tengah layar, kelebihan funsi MessageDlg dibandingkan dengan ShowMessage yang telah kita pelajari sebelumnya adalah kita bisa menentukan sendiri Caption dari kotak pesan, menentukan tipe gambar dan tipe tombol yang digunakan. Syntax Penggunaan MessageDlg Lazarus Free Pascal: MessageDlg('Isi Caption','Isi Pesan',Tipe Gambar,Tipe Tombol,0) Contoh: MessageDlg('Peringatan','Isikan banyak barang!',mtWarning,[mbOk],0) Maka tampilannya akan seperti gambar di bawah ini: Jenis-jenis Tipe Gambar: mtWarning : Tanda seru berwarna kuning. mtError : Tanda silang warna merah. mtInformation : Huruf i warna biru. mtConfirmation :  Tanda tanya warna biru. mtCustom : Tidak ada gambar. Jenis-jenis Tipe Tombol: mbYes : Tombol dengan tulisan 'Yes'. mbNo : Tombol dengan tulisan 'No'. mbOK : Tombol dengan tulisan 'OK'. mbCan...

Penggunaan Binary Operator Lazarus Free Pascal

Untuk operasi matematika dua bilangan / angka digunakan Binary Operator (operasi tanda biner) yang meliputi: +, -, *, /, DIV, MOD. Disebut dengan binary operator (tanda operasi biner) karena operator ini digunakan untuk mengoperasikan dua buah operand. Operand dapat berbentuk konstanta ataupun variabel. Operator adalah simbol atau kata yang digunakan dalam program untuk melakukan operasi, seperti penjumlahan, perkalian, membandingkan kesamaan dua buah operand dan lain-lain. Operand adalah sebuah nilai yang akan dikerjakan oleh operator. Contoh: 1 + 2 Angka 1 dan 2 adalah operand, sedangkan + adalah operator. Seperti telah dijelaskan Jenis Data Standard Lazarus Free Pascal sebelumnya sekarang akan kita bahas lebih mendalam lagi tentang Operasi Matematika pada Integer dan Real. Integer dan Real adalah sama-sama tipe data berjenis angka / bilangan, perbedaannya utamanya terletak pada kemampuan menampung angka pecahan. Integer hanya bisa menampung bilangan bulat sedangkan R...

Jenis Variabel Berdasarkan Letak Deklarasi Lazarus Free Pascal

Berdasarkan letak penempatan deklarasi variabel pada Lazarus Free Pascal, variabel dibedakan menjadi 3, yaitu variabel lokal, variabel global privat dan variabel global public. 1. Variabel Lokal Variabel lokal adalah variabel yang dibuat di dalam potongan program (procedure atau function) sehingga hanya procedure / function itu saja yang dapat menggunakannya. Contoh penempatan Variabel Lokal: 2. Variabel Global Privat Variabel Global Privat, Global artinya variabel dapat diakses oleh seluruh procedure / function di dalam unit tersebut, sedangkan Privat artinya variabel tersebut tidak dapat digunakan / diakses oleh unit lain. Contoh penempatan Variabel Global Privat: 3. Variabel Global Publik Variabel Global Privat, Global artinya variabel dapat diakses oleh seluruh procedure / function di dalam unit tersebut, sedangkan Publik artinya variabel tersebut dapat digunakan / diakses oleh unit lain. Contoh penempatan Variabel Global Publik: Kelebihan dan Kekurangan Varia...

Penggunaan Komponen RadioGroup Lazarus Free Pascal (Belajar Lazarus #10)

Pada Tutorial Penggunaan Komponen RadioGroup Lazarus Free Pascal kali ini bertujuan untuk memahami cara penggunaan RadioGroup serta penerapan pernyataan / statement CASE. Untuk itu maka silahkan buka kembali proyek aplikasi kasiratk yang telah anda buat sebelumnya. Untuk mengingat kembali jika lupa silahkan buka kembali tutorial RadioGroup dan Validasi Data . KOMPONEN RADIOGROUP RadioGroup adalah gabungan dari komponen RadioButton dan komponen GroupBox, fungsinya sama dengan komponen RadioButton. Setelah program aplikasi kasiratk terbuka, ikuti langkah-langkah di bawah ini: LANGKAH-LANGKAH PENAMBAHAN KOMPONEN & PROPERTIES : Ubah aplikasi yang memakai RadioButton dengan RadioGroup, caranya dengan klik GroupBox, lalu tekan tombol Delete, maka ketiga komponen RadioButton didalamnya akan ikut terhapus. Tempatkan komponen RadioGroup di tempat GroupBox. Ubah Name menjadi RGBarang dan Caption-nya menjadi Nama Barang. Klik tombol [,,,] pada Properties Items milik komponen RGBar...

Validasi Data Penanganan Kesalahan Lazarus Free Pascal (Belajar Lazarus #9)

Pengecekan Validasi (Keabsahan) Data dengan Penanganan Kesalahan pada Lazarus Free Pascal wajib dilakukan oleh programmer, Sebagai programmer kita menginginkan agar pemakai program buatan kita dijalankan dengan benar, misal disuruh input angka maka yang diinputkan juga angka, inputan tanggal diisi tanggal. Ada kalanya apa yang kita inginkan sebagai programmer tidak dilakukan oleh pemakai program kita, baik itu karena unsur sengaja maupun tidak sengaja. Bisa juga kesalahan data itu dari hasil program kita sendiri. Sebagai bahan praktek validasi data kali ini silahkan buka kembali postingan aku sebelumnya di Memilih Data dengan RadioButton Lazarus (Belajar Lazarus #7) buka proyek aplikasi kasiratk.lpi Silahkan compile (tekan F9) lalu coba masukkan pada kotak EBanyak barang dengan angka pecahan misalnya 5.5 , terus tekan tombol hitung. Perhatikan apa yang terjadi! Akan muncul pesan error. Gambar error pertama di bawah ini adalah pesan error yang dihasilkan oleh IDE Lazarus Fre...

Program Kode Ascii Keyboard Lazarus Free Pascal

Untuk membuat program kode ascii dari tombol keyboard yang kita tekan, kita perlu memahami even OnKeyDown dan OnKeyPress. Kedua event ini memang sama-sama dikirim saat tombol keyboard ditekan. Yang membedakan keduanya adalah jenis tombol yang ditekan. Event OnKeyDown dikirim saat sembarang tombol keyboard ditekan. Event OnKeyPress dikirim saat tombol keyboard yang mempunyai tampilan di layar (karakter ASCII) dikirim. Sebagai contoh, bila anda menekan tombol ( F1 ), Sistem operasi (Windows, Linux, dsb) hanya akan mengirim event OnKeyDown. Namun bila anda menekan tombol ( A ), Sistem operasi  akan mengirim evemt OnKeyDown dan juga OnKeyPress. Untuk lebih jelasnya mari kita buat program Kode Ascii Keyboard Lazarus Free Pascal. Dengan program ini anda bisa mencoba-coba tombol mana yang akan menghasilkan event OnKeyPress dan tombol mana yang menghasilkan kedua event tersebut. Langkah-langkah komponen: Buat 7 buah label pada form. Langkah-langkah properties: Label1: Caption: ...