2013-06-22 21_46_31-MainForm

Print Friendly
Ini adalah bahan diskusi di KPPDI. Monggo cek di sini: Meringkas Kode Penggantian Font

Pertanyaannya, bagaimana caranya mengubah property font pada komponen-komponen tertentu dalam sebuah form, tanpa mempengaruhi font pada komponen lainnya?

Prosedur sederhana berikut dapat digunakan untuk tujuan tersebut:

implementation

uses u2, TypInfo {<-- JANGAN SAMPE LUPA};

{$R *.dfm}

procedure DoFormStyle(Form: TFOrm; Font: TFont; Target: TControlClass);
var
  i: Integer;
begin
  if not IsPublishedProp(Target, 'Font') then
  begin
    ShowMessage(Target.ClassName +' tidak memiliki property Font!');
    exit;
  end;
  for i:=0 to Form.ControlCount-1 do
  begin
    if (Form.Controls[i] is Target) then
      SetObjectProp(Form.Controls[i], 'Font', Font);
  end;
end;

Kemudian, penggunannnya sangat mudah:

procedure TForm1.Button1Click(Sender: TObject);
begin
  if FontDialog1.Execute then
    DoFormStyle(Form2,FontDialog1.Font, TComboBox);
end;

Dengan cara di atas kita dapa dengan mudah mengubah property font untuk kontrol tertentu, misalnya TComboBox atau TButton.

Salam Delphi,
Fara :)

Comments

comments

Powered by Facebook Comments