Penulis: Aplikasi dan Jaringan
Chanel Youtube : Simple Tutorial
Kali ini kita akan membuat sebuah percobaan kecil, bagaimana huruf atau kalimat label milik TLabel di Lazarus IDE dapat kita rubah menggunakan daftar jenis huruf yang telah kita tambahkan didalam dropdown menu atau TComboBox secara "on the fly". Artinya kita tidak perlu untuk membongkar kode hanya untuk mengganti jenis huruf milik TLabel, cukup dengan menggantinya dari aplikasi.
Berikut adalah langkah-langkahnya :
1. Buat sebuah project baru di Lazarus IDE.
2. Tambahkan sebuah TLabel komponen dan sebuah TComboBox komponen diatas Form1 sebagai lembar kerja. Sehingga otomatis masing-masing akan diberi nama ComboBox1 dan Label1.
3. Dari Object Inspector, pilih property milik TComboBox yang bernama ComboBox1 dan set propertiesnya "Read Only" dengan True. Dan dari Events milik ComboBox1, lakukan klik 2 kali atau dobel klik di area kosong sebelah kanan "OnChange" sehingga akan ditampilkan lembar source editor. Tambahkan kode kedalamnya :
[code] Label1.Font.Name := ComboBox1.Items.Strings[(ComboBox1.Items.IndexOf(ComboBox1.Text))]; [/code]
Dimana dengan kode diatas, untuk merubah huruf di TLabel (Label1), kita memerlukan perubahan properties nama huruf (Font Name) milik Label1 yang didapat dari list atau daftar huruf di TComboBox (ComboBox1).
4. Dari Object Inspector kembali, pilih property Form1 (TForm), kemudian pilih Events dan lakukan dobel klik di area kosong sebelah kanan "OnCreate" sehingga kita akan kembali ke lembar source editor, lalu tambahkan kode kedalamnya :
[code] ComboBox1.Items.AddStrings(Screen.Fonts); [/code]
Dimana dengan kode diatas akan memuat semua huruf yang terdapat didalam operating system (OS), kedalam TComboBox (ComboBox1) yang mana setiap huruf akan berbeda antara Windows, Linux atau MacOS.
5. Selesai, tekan F9 atau klik menu Run untuk melihat hasil akhirnya.
Kode selengkapnya adalah sebagai berikut :
[code] unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, LResources, Forms, Controls, Graphics, Dialogs, StdCtrls; type { TForm1 } TForm1 = class(TForm) ComboBox1: TComboBox; Label1: TLabel; procedure ComboBox1Change(Sender: TObject); procedure FormCreate(Sender: TObject); private { private declarations } public { public declarations } end; var Form1: TForm1; implementation { TForm1 } procedure TForm1.ComboBox1Change(Sender: TObject); begin Label1.Font.Name := ComboBox1.Items.Strings[(ComboBox1.Items.IndexOf(ComboBox1.Text))]; end; procedure TForm1.FormCreate(Sender: TObject); begin ComboBox1.Items.AddStrings(Screen.Fonts); end; initialization {$I unit1.lrs} end. [/code]
BERI KOMENTAR
Maaf untuk sementara waktu komentar di blog ini di nonaftifkan.