Mengisi item combobox dengan
Tanggal Bulan atau Tahun di delphi. mungkin adakalanya kita ingin
membuat tanggal manual (maksudnya tidak pakai Datetimepecker) dan
dipisah-pisah menggunakan atau disimpan dicombobox. sedikit saya share
tentang bagaimana coding agar tanggal bulan atau tahun di masukan
kedalam combobox secara otomatis.
untuk contoh siapkan 3 buah combobox,tapi kalau anda malas langsung copas saja desain formnya dibawah ini :
object Form1: TForm1
Left = 400
Top = 204
Width = 286
Height = 148
Caption = '[xtremeboy23koe.blogspot.com]'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
OnShow = FormShow
PixelsPerInch = 96
TextHeight = 13
object Label1: TLabel
Left = 22
Top = 28
Width = 37
Height = 13
Caption = 'Tahun'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Label2: TLabel
Left = 193
Top = 28
Width = 47
Height = 13
Caption = 'Tanggal'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Label3: TLabel
Left = 102
Top = 28
Width = 33
Height = 13
Caption = 'Bulan'
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = [fsBold]
ParentFont = False
end
object Label4: TLabel
Left = 20
Top = 84
Width = 82
Height = 13
Caption = 'Selamat Belajar...'
end
object CBTahun: TComboBox
Left = 20
Top = 49
Width = 78
Height = 21
Style = csDropDownList
ItemHeight = 13
TabOrder = 0
OnChange = CBTahunChange
end
object CBBulan: TComboBox
Left = 101
Top = 49
Width = 86
Height = 21
Style = csDropDownList
ItemHeight = 13
TabOrder = 1
OnChange = CBBulanChange
end
object CBTanggal: TComboBox
Left = 192
Top = 49
Width = 56
Height = 21
Style = csDropDownList
ItemHeight = 13
TabOrder = 2
end
end
dan untuk Listing Codingnya (coding lengkapnya) :
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
TForm1 = class(TForm)
CBTahun: TComboBox;
CBBulan: TComboBox;
CBTanggal: TComboBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
procedure FormShow(Sender: TObject);
procedure CBBulanChange(Sender: TObject);
procedure CBTahunChange(Sender: TObject);
private
{ Private declarations }
procedure Tanggal;
procedure Bulan;
procedure Tahun;
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
uses DateUtils;
{$R *.dfm}
procedure TForm1.Tahun;
var
thn, bln, hari: Word;
i: Integer;
begin
DecodeDate(Date(),thn,bln,hari);
CBTahun.Items.Clear;
for i := 1900 to thn do
begin
CBTahun.Items.Add(IntToStr(i));
end;
CBTahun.ItemIndex :=CBTahun.Items.IndexOf((FormatDateTime('yyyy',now))) ;
end;
procedure TForm1.Bulan;
var
Bulan : String;
begin
Bulan := 'Januari:Februari:Maret:April:Mei:Juni:Juli:Agustus:September:Oktober:November:Desember';
CBBulan.Items.Text := StringReplace(Bulan,':',Char(13)+Char(10),[rfReplaceAll]);
CBBulan.ItemIndex :=strtoint(copy(datetostr(Date()),4,2))-1;
end;
procedure TForm1.Tanggal;
var
i: Integer;
begin
if CBBulan.ItemIndex=0 then //Januari
begin
CBTanggal.Clear;
for i := 1 to 31 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=1 then //Februari
begin
CBTanggal.Clear;
if StrToInt(CBTahun.Text) mod 4=0 then
Begin
for i := 1 to 29 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
End else
for i := 1 to 28 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=2 then //maret
begin
CBTanggal.Clear;
for i := 1 to 31 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=3 then //April
begin
CBTanggal.Clear;
for i := 1 to 30 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=4 then //Mei
begin
CBTanggal.Clear;
for i := 1 to 31 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=5 then //Juni
begin
CBTanggal.Clear;
for i := 1 to 30 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=6 then //Juli
begin
CBTanggal.Clear;
for i := 1 to 31 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=7 then //Agustus
begin
CBTanggal.Clear;
for i := 1 to 31 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=8 then //September
begin
CBTanggal.Clear;
for i := 1 to 30 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=9 then //Oktober
begin
CBTanggal.Clear;
for i := 1 to 31 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=10 then //November
begin
CBTanggal.Clear;
for i := 1 to 30 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end else
if CBBulan.ItemIndex=11 then //Desember
begin
CBTanggal.Clear;
for i := 1 to 31 do
begin
CBTanggal.Items.Add(IntToStr(i));
end;
end;
CBTanggal.ItemIndex :=CBTanggal.Items.IndexOf((FormatDateTime('dd',now))) ;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
Bulan;
Tahun;
Tanggal;
end;
procedure TForm1.CBBulanChange(Sender: TObject);
begin
Tanggal;
end;
procedure TForm1.CBTahunChange(Sender: TObject);
begin
Tanggal;
end;
end.
Saya harap akan berguna ya,karena mikir'y sulit harus utak atik dulu,maklum masih pemula...jangan Lupa kicauannya !!
Title : Isi Tanggal Bulan dan Tahun Otomatis di ComboBox Delphi
Description : Mengisi item combobox dengan Tanggal Bulan atau Tahun di delphi. mungkin adakalanya kita ingin membuat tanggal manual (maksudnya tidak pa...
Description : Mengisi item combobox dengan Tanggal Bulan atau Tahun di delphi. mungkin adakalanya kita ingin membuat tanggal manual (maksudnya tidak pa...

minta file jadinya mas tapi jangan diprotek
BalasHapus