Skip to main content

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 secara alfabetis.
ComboBox mengombinasikan kotak edit dengan listbox. Dengan ListBox, anda hanya dapat memilih salah satu pilihan yang telah tersedia. Dengan ComboBox, selain dari pilihan yang tersedia anda juga dapat mengetikkan teks.

Demo Penggunaan Memo ComboBox ListBox dan CheckBox


Selanjutnya, mari kita buat aplikasi dengan desain seperti gambar di atas untuk mendemonstrasikan keempat komponen di atas (Memo, ComboBox, ListBox dan CheckBox). Buatlah aplikasi bari dan simpan beri nama appmemo.lpi dan unitnya beri nama uappmemo.pas, ganti property berikut ini :

Form1
Name: FAppMemo
Caption: Aplikasi Demo Penggunaan Memo ComboBox ListBox dan CheckBox

Memo1
Klik ganda tanda ... pada property Lines dan anda akan masuk ke String List Editor. Disana sudah tercantum Memo1 sesuai dengan nama memo. Hapus teks tersebut. Klik OK untuk mengakhiri String List Editor.

ComboBox1
Kita akan mengisikan 4 pilihan pada ComboBox. Klik ganda kolom isian dari property Items (klik ganda tanda ...). Anda akan masuk ke String List Editor dan isikan teks berikut ini:
    Lazarus Free Pascal
    Demo Komponen Memo
    Demo ListBox 3 item
    ComboBox dan CheckBox

Property ItemIndex isi angka 0

ListBox1
Isikan pada property Items
    1. Kotak Memo Warna Putih
    2. Kotak Memo Warna Kuning
    3. Kotak Memo Warna Hijau

Property ItemIndex isi angka 0

GroupBox1
Caption: Font

Kedalam GroupBox1 tambahkan 3 buah CheckBox:
CheckBox1
Caption: Teks Warna Merah
CheckBox2
Caption: Teks Miring
CheckBox3
Caption: Teks Cetak Tebal

Tambahkan 3 buah Button:
Button1
Caption: Isi Memo
Name: BMemo
Button2
Caption: Ubah Font
Name: BFont
Button3
Caption: Keluar
Name: BKeluar

Penulisan Kode Program Aplikasi Demo Penggunaan Memo


BMemo
Event OnClick
procedure TFAppMemo.BMemoClick(Sender: TObject);
begin
  Memo1.Clear;
  Memo1.Lines.Add(ComboBox1.Text);
  Memo1.Lines.Add('ListBox yang dipilih nomor: '+IntToStr(ListBox1.ItemIndex+1));
  Case ListBox1.ItemIndex of
  0 : Memo1.Color:=clWhite;
  1 : Memo1.Color:=clYellow;
  2 : Memo1.Color:=clGreen;
  end;
end;


BFont
Event OnClick
procedure TFAppMemo.BFontClick(Sender: TObject);
begin
  if CheckBox1.State=cbChecked
  then Memo1.Font.Color:=clRed
  else Memo1.Font.Color:=clWindowText;

  Memo1.Font.Style:=[];
  if CheckBox2.State=cbChecked
  then Memo1.Font.Style:=[fsItalic];

  if CheckBox3.State=cbChecked
  then Memo1.Font.Style:=Memo1.Font.Style+[fsBold];
end;


BKeluar
Event OnClick
procedure TFAppMemo.BKeluarClick(Sender: TObject);
begin
  Close;
end;



Penjelasan Kode Program Aplikasi Demo Penggunaan Memo


Tombol Isi Memo dipakai untuk mengisi teks ke dalam Memo. Pertama-tama, teks pada Memo dibersihkan. Baris pertama Memo berisi teks dari ComboBox. Teks dari ComboBox dapat berupa teks yang anda ketikkan atau teks yang dipilih dari pilihan yang tersedia. Baris kedua menyatakan pilihan ke berapa dari ListBox yang dipilih. Selanjutnya warna dasar memo diubah sesuai dengan pilihan anda pada ListBox.

Tombol Ubah Font dipakai untuk mengubah font tulisan di memo. Pilihan font menggunakan CheckBox, sehingga anda dapat memilih lebih dari satu pilihan (bandingkan dengan RadioButton yang hanya boleh memilih salah satu). Jika anda memilih CheckBox1, teks berwarna merah, jika tidak, warna default. CheckBox2 dipakai untuk mencetak miring dan CheckBox3 untuk cetak tebal.

Tombol Keluar untuk mengakhiri aplikasi. Berikut listing lengkapnya:

unit uappmemo;

{$mode objfpc}{$H+}

interface

uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls;

type

  { TFAppMemo }

  TFAppMemo = class(TForm)
    BMemo: TButton;
    BFont: TButton;
    BKeluar: TButton;
    CheckBox1: TCheckBox;
    CheckBox2: TCheckBox;
    CheckBox3: TCheckBox;
    ComboBox1: TComboBox;
    GroupBox1: TGroupBox;
    ListBox1: TListBox;
    Memo1: TMemo;
    procedure BFontClick(Sender: TObject);
    procedure BKeluarClick(Sender: TObject);
    procedure BMemoClick(Sender: TObject);
  private
    { private declarations }
  public
    { public declarations }
  end;

var
  FAppMemo: TFAppMemo;

implementation

{$R *.lfm}

{ TFAppMemo }

procedure TFAppMemo.BMemoClick(Sender: TObject);
begin
  Memo1.Clear;
  Memo1.Lines.Add(ComboBox1.Text);
  Memo1.Lines.Add('ListBox yang dipilih nomor: '+IntToStr(ListBox1.ItemIndex+1));
  Case ListBox1.ItemIndex of
  0 : Memo1.Color:=clWhite;
  1 : Memo1.Color:=clYellow;
  2 : Memo1.Color:=clGreen;
  end;
end;

procedure TFAppMemo.BFontClick(Sender: TObject);
begin
  if CheckBox1.State=cbChecked
  then Memo1.Font.Color:=clRed
  else Memo1.Font.Color:=clWindowText;

  Memo1.Font.Style:=[];
  if CheckBox2.State=cbChecked
  then Memo1.Font.Style:=[fsItalic];

  if CheckBox3.State=cbChecked
  then Memo1.Font.Style:=Memo1.Font.Style+[fsBold];
end;

procedure TFAppMemo.BKeluarClick(Sender: TObject);
begin
  Close;
end;

end.


Sebagai catatan tambahan, property Font.Style bertipe set yang dapat kosong atau berisi beberapa nilai yang diperbolehkan. Perhatikan cara penulisannya. Operator + pada set menyatakan operasi gabungan. Demikian artikel Aplikasi Demo Penggunaan Memo ComboBox ListBox dan CheckBox (Belajar Lazarus #14) selamat mencoba :) .

Comments

Popular posts from this blog

Inilah Kelebihan dan Kekurangan SQLite

  Artikel ini akan membahas tentang, tipe data yang didukung SQLite,  kelebihan dari SQLite, kekurangan SQLite, kapan sebaiknya ketika menggunakan SQLite dan kapan sebaiknya kita tidak menggunakan SQLite. Merujuk dari id.wikipedia.org disebutkan bahwa SQLite merupakan sebuah sistem manajemen basisdata relasional yang bersifat ACID-compliant dan memiliki ukuran pustaka kode yang relatif kecil, ditulis dalam bahasa C. SQLite merupakan proyek yang bersifat public domain yang dikerjakan oleh D. Richard Hipp . SQLite adalah perpustakaan menakjubkan yang disematkan di dalam aplikasi yang menggunakan. Sebagai database mandiri, berbasis file, SQLite menawarkan serangkaian menakjubkan alat untuk menangani segala macam data dengan jauh lebih sedikit kendala dan kemudahan dibandingkan dengan host, proses berbasis (server) database relasional. Ketika sebuah aplikasi menggunakan SQLite, integrasi bekerja dengan panggilan fungsional dan langsung dibuat untuk file memegang data (yaitu ...

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...