Contoh aplikasi delphi

43

Transcript of Contoh aplikasi delphi

DAFTAR ISI

Instalasi komponen DSPACK .................................3

Edit soal objektif.........................................3

Form ke memo..............................................10

Frame.....................................................12

Frame random..............................................14

Jawaban siswa.............................................16

Memo ke caption...........................................25

Memo ke memo..............................................25

Ole objek.................................................26

Random 1..................................................28

Random 2..................................................29

Random 3..................................................29

Random 4..................................................30

Salin ke memo.............................................31

Save ini..................................................34

Mengakses database microsoft acces........................37

Mengakses database ADO....................................47

Pemograman database.......................................56

Array.....................................................66

Operator string...........................................70

Penggabungan string.......................................70

Hapus teks................................................72

Panjang string............................................74

2

Pencarian huruf...........................................76

Copy teks.................................................78

Konfersi ASCII............................................80

Instalasi Komponen DSPACK di Delphi1. Extrack File Hasil Download kemudian letakkan di C:\ProgramFiles\Borland\DSPACK2. Buka Delphi Anda Kemudian lalu klik menu File -> Open ->(DSPack_D7, DSPackDesign_D7, DirectX9_D7) ada di Folder C:\Program Files\Borland\DSPACK\Packages -> Install satu PersatuSelanjutnya Kita harus menambahkan Path Library DSPACK keDelphi agar tidak terjadi Error saat kita mengcompile Aplikasikita. Caranya Klik menu Tools -> Environment Options -> Masukke Tab LibraryTambahkan Path Library DirectX9 dan DSPack yang ada di FolderC:\ProgramFiles\Borland\DSPACK\SRC

Edit Soal Objektif

unit

soal;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtnrs, printers, inifiles, ExtCtrls, jpeg,cxGraphics, cxLookAndFeels,

3

cxLookAndFeelPainters, Menus, cxButtons;

type TForm1 = class(TForm) GroupBox1: TGroupBox; Label5: TLabel; ComboBox4: TComboBox; Label2: TLabel; Edit1: TEdit; Label3: TLabel; ComboBox2: TComboBox; Label4: TLabel; ComboBox3: TComboBox; Label7: TLabel; Label9: TLabel; Edit3: TEdit; GroupBox2: TGroupBox; Memo2: TMemo; Button3: TButton; Button4: TButton; Button2: TButton; Button5: TButton; GroupBox3: TGroupBox; Label1: TLabel; ComboBox1: TComboBox; Label6: TLabel; ComboBox5: TComboBox; OleContainer1: TOleContainer; Label10: TLabel; Edit4: TEdit; Label11: TLabel; PrinterSetupDialog1: TPrinterSetupDialog; OpenDialog1: TOpenDialog; Button7: TButton; Label12: TLabel; Memo3: TMemo; Button9: TButton; Memo4: TMemo; ComboBox6: TComboBox; Label13: TLabel; ComboBox7: TComboBox; Button6: TButton;

4

Label8: TLabel; Label14: TLabel; Label15: TLabel; Timer1: TTimer; Label16: TLabel; Edit5: TEdit; Label17: TLabel; Edit6: TEdit; Image1: TImage; cxButton1: TcxButton; ComboBox8: TComboBox; procedure Button2Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button7Click(Sender: TObject); procedure ComboBox5Change(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure Timer1Timer(Sender: TObject); procedure ComboBox1Change(Sender: TObject); procedure simpan; procedure cxButton1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; Namafile:string; f:textfile; Mailini:Tinifile;

implementation{$R *.dfm}

procedure TForm1.Button2Click(Sender: TObject);begin memo2.ReadOnly:=false;end;

5

procedure TForm1.Button5Click(Sender: TObject);beginmemo2.Lines.Clear;end;

procedure TForm1.Button3Click(Sender: TObject);begin NamaFile:=combobox6.text+combobox4.text+combobox3.text+combobox2.text+ edit3.text+'.rtf'; memo2.Lines.SaveToFile(namafile); showMessage('Tersimpan'); end;

//tombol cetakprocedure TForm1.Button4Click(Sender: TObject);begin if printersetupdialog1.Execute() then begin assignPrn(f); try rewrite(f); writeln(f,memo2.text); finally closeFile(f); end;end; end;

//tombol membuka arsipprocedure TForm1.Button7Click(Sender: TObject);begin if opendialog1.Execute thenbeginmemo2.Lines.LoadFromFile(opendialog1.FileName);end;end;procedure TForm1.ComboBox5Change(Sender: TObject);begin//Memasukkan combo ke memo

6

memo3.Lines.Add(combobox5.text); memo4.Lines.Add(combobox1.text); simpan; end;

//membuka ole container,untuk di editprocedure TForm1.Button6Click(Sender: TObject);beginolecontainer1.DoVerb(ovprimary)end;

procedure TForm1.simpan;//menyimpan soal;beginOlecontainer1.SaveToFile(combobox6.text+combobox4.text+combobox3.Text+combobox2.Text+combobox1.text+'.obj');messagedlg('Telah Tersimpan',mtinformation,[mbOK],0);olecontainer1.Close;

if combobox1.Text=combobox8.text thenbegin//Mail ini file extension dor, menyimpan kunci soalMailIni:=TIniFile.Create(extractFilePath(paramstr(0))+combobox6.text+combobox4.text+combobox3.text+combobox2.text+edit3.text+'.dor');with MailIni do beginWriteString('smtp','Jumlah Soal',combobox8.text);WriteString('smtp','Alokasi Waktu',combobox7.Text);WriteString('smtp','01',memo3.lines[0]);WriteString('smtp','02',memo3.Lines[1]);WriteString('smtp','03',memo3.Lines[2]);WriteString('smtp','04',memo3.Lines[3]);WriteString('smtp','05',memo3.Lines[4]);WriteString('smtp','06',memo3.Lines[5]);WriteString('smtp','07',memo3.Lines[6]);WriteString('smtp','08',memo3.Lines[7]);WriteString('smtp','09',memo3.Lines[8]);WriteString('smtp','10',memo3.Lines[9]);WriteString('smtp','11',memo3.Lines[10]);WriteString('smtp','12',memo3.Lines[11]);WriteString('smtp','13',memo3.Lines[12]);

7

WriteString('smtp','14',memo3.Lines[13]);WriteString('smtp','15',memo3.Lines[14]);WriteString('smtp','16',memo3.Lines[15]);WriteString('smtp','17',memo3.Lines[16]);WriteString('smtp','18',memo3.Lines[17]);WriteString('smtp','19',memo3.Lines[18]);WriteString('smtp','20',memo3.Lines[19]);WriteString('smtp','21',memo3.Lines[20]);WriteString('smtp','22',memo3.Lines[21]);WriteString('smtp','23',memo3.Lines[22]);WriteString('smtp','24',memo3.Lines[23]);WriteString('smtp','25',memo3.Lines[24]);WriteString('smtp','26',memo3.Lines[25]);WriteString('smtp','27',memo3.Lines[26]);WriteString('smtp','28',memo3.Lines[27]);WriteString('smtp','29',memo3.Lines[28]);WriteString('smtp','30',memo3.Lines[29]);WriteString('smtp','31',memo3.Lines[30]);WriteString('smtp','32',memo3.Lines[31]);WriteString('smtp','33',memo3.Lines[32]);WriteString('smtp','34',memo3.Lines[33]);WriteString('smtp','35',memo3.Lines[34]);WriteString('smtp','36',memo3.Lines[35]);WriteString('smtp','37',memo3.Lines[36]);WriteString('smtp','38',memo3.Lines[37]);WriteString('smtp','39',memo3.Lines[38]);WriteString('smtp','40',memo3.Lines[39]);WriteString('smtp','41',memo3.Lines[40]);WriteString('smtp','42',memo3.Lines[41]);WriteString('smtp','43',memo3.Lines[42]);WriteString('smtp','44',memo3.Lines[43]);WriteString('smtp','45',memo3.Lines[44]);WriteString('smtp','46',memo3.Lines[45]);WriteString('smtp','47',memo3.Lines[46]);WriteString('smtp','48',memo3.Lines[47]);WriteString('smtp','49',memo3.Lines[48]);WriteString('smtp','50',memo3.Lines[49]);showmessage('Kunci Disimpan');end;MailIni.Free;end;end;

8

//membuka soal yang telah di buatprocedure TForm1.Button9Click(Sender: TObject);beginif opendialog1.Execute thenbeginolecontainer1.LoadFromFile(opendialog1.FileName);end;end;

//menampilkan waktu dan tanggalprocedure TForm1.Timer1Timer(Sender: TObject);beginedit5.Text:=formatDateTime('dd/mm/yyyy',now);edit6.Text:=Formatdatetime('hh:mm:ss',now);end;

//membersihkan OLE containerprocedure TForm1.ComboBox1Change(Sender: TObject);beginolecontainer1.Close;olecontainer1.DoVerb(ovprimary);end;

//Tombol OK, mengaktifkan funsi tombol lainnyaprocedure TForm1.cxButton1Click(Sender: TObject);beginGroupbox2.Enabled:=true;Groupbox3.Enabled:=true;//mengisikan data dari edit text ke memomemo2.lines.Add('***************************************************');Memo2.Lines.Add('Ujian: '+combobox2.Text);Memo2.Lines.Add('Bidang Study '+combobox6.Text +' Tahun '+edit3.Text);Memo2.Lines.Add(edit1.text +' Kelas '+combobox3.Text);Memo2.Lines.Add('***************************************************');Memo2.Lines.Add('Nama Guru: '+edit4.Text);Memo2.Lines.Add('Jumlah Soal: '+combobox8.text);memo2.Lines.Add('Alokasi Waktu: '+combobox7.Text+' Menit');memo2.Lines.Add('');

9

memo2.Lines.Add('');end;end.

File ShrederTambahkan komponen-komponen berikut ke form1.1 buah TEdit , 1 buah TOpenDialog dan 2 Buah TButton.

Selanjutnya.Tambahkan dua buah procedure pada program tersebut.Ketikan kode berikut setelah {$R *.dfm}

//procedure shredder procedure ShredderFile(FileName: string); const Buffer = 1024; Counttowrite = 34; FillBuffer: array[0..5] of Integer = ($00, $FF, $00, $F0, $0F, $00); var arr: array[1..Buffer] of Byte; f: file; i, j, n: Integer; begin AssignFile(f, FileName); Reset(f, 1); n := FileSize(f); for j := 0 to Counttowrite do begin for i := 1 to n div Buffer do begin BlockWrite(f, FillBuffer[j], Buffer); end; end; CloseFile(f); RenameFile(FileName, ExtractFilepath(FileName) + '$000000.tmp'); DeleteFile(ExtractFilepath(FileName) + '$000000.tmp'); end; //akhir procedure shredder

10

//procedure shredder and delete procedure ShredderAndDeleteFile(const FileName: string); var newname: string; begin newname := ExtractFilepath(FileName) + '$000000.tmp'; if not RenameFile(FileName, newname) then raise Exception.CreateFmt('Kesalahan!', [FileName]); ShredderFile(newname); DeleteFile(newname); end;

double klik TButton browse lalu ketikan kode berikutprocedure TForm1.Button1Click(Sender: TObject); begin if OpenDialog1.Execute then begin Edit1.Text:=OpenDialog1.FileName; end; end;

TButton Delete dan ketikan kode berikutprocedure TForm1.Button2Click(Sender: TObject); begin if Edit1.Text<>'' then begin ShredderAndDeleteFile(Edit1.Text); ShowMessage('File berhasil di hapus'); Edit1.Clear; end; end;

Form ke Memo

11

Form 1.unit CapMemo;interface

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls;

type TForm1 = class(TForm) Label1: TLabel; Timer1: TTimer; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Edit1: TEdit; RadioGroup1: TRadioGroup; ComboBox1: TComboBox; CheckBox1: TCheckBox; CheckBox2: TCheckBox; CheckBox3: TCheckBox; Button1: TButton; procedure Timer1Timer(Sender: TObject); procedure Button1Click(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;

12

jk:string; hobi:string; implementation

uses Memo;

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);begin Label1.Caption:=TimeToStr(now);end;

procedure TForm1.Button1Click(Sender: TObject);beginMessageDlg('Data telah dicetak',mtInformation,[mbOK],0);if CheckBox1.Checked=True then hobi:=hobi+'nonton, ';if CheckBox2.Checked=True then hobi:=hobi+'main, ';if CheckBox3.Checked=True then hobi:=hobi+'baca';

Form1.Visible:=False;//menyembunyikan form1Form2.Show;//memperlihatkan form2//Form2.Memo1.Clear;Form2.Memo1.Lines.Add('Waktu Input data Pkl. '+Label1.Caption);Form2.Memo1.Lines.Add('Nama : '+Edit1.Text);Form2.Memo1.Lines.Add('Agama : '+ComboBox1.Text);Form2.Memo1.Lines.Add('Jenis Kelamin : '+jk);Form2.Memo1.Lines.Add('Hobi : '+hobi);hobi:='';Form2.Memo1.Lines.Add('');Form2.Memo1.ScrollBars:=ssVertical;end;

procedure TForm1.RadioGroup1Click(Sender: TObject);begin if RadioGroup1.ItemIndex=0 thenjk:='laki-laki'elsejk:='perempuan';end;end.

Form 2unit Memo;interfaceuses

13

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm2 = class(TForm) Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form2: TForm2;

implementationuses CapMemo;{$R *.dfm}

procedure TForm2.Button1Click(Sender: TObject);begin Form2.Visible:=False;//menyembunyikan form1Form1.Show;//menampilkan form1Form1.Edit1.Text:='';Form1.ComboBox1.ItemIndex:=-1;Form1.RadioGroup1.ItemIndex:=-1;Form1.CheckBox1.Checked:=False;Form1.CheckBox2.Checked:=False;Form1.CheckBox3.Checked:=False;end;end.

Frame

14

unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons;

type TForm1 = class(TForm) Edit1: TEdit; ListBox1: TListBox; Button1: TButton; Button2: TButton; Edit2: TEdit; ListBox2: TListBox; Button3: TButton; Button4: TButton; SpeedButton1: TSpeedButton; SpeedButton2: TSpeedButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure SpeedButton1Click(Sender: TObject); procedure SpeedButton2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1;

implementation{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);beginif edit1.Text <>''then listbox1.Items.add(edit1.Text);

end;

procedure TForm1.Button2Click(Sender: TObject);beginif listbox1.ItemIndex >=0 thenlistbox1.Items.Delete(listbox1.ItemIndex);

15

end;

procedure TForm1.SpeedButton1Click(Sender: TObject);beginlistbox1.Items.AddStrings(listbox2.Items);end;

procedure TForm1.SpeedButton2Click(Sender: TObject);beginlistbox2.Items.AddStrings(listbox1.Items);end;

procedure TForm1.Button3Click(Sender: TObject);beginif edit2.Text <>''then listbox2.Items.add(edit2.Text);end;

procedure TForm1.Button4Click(Sender: TObject);begin if listbox2.ItemIndex >=0 thenlistbox2.Items.Delete(listbox2.ItemIndex);end;

end.Frame Random

unit Unit1;interface

uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; ListBox1: TListBox; ListBox2: TListBox;

16

Button3: TButton; Label2: TLabel; Edit2: TEdit; Button2: TButton; Edit3: TEdit; Button4: TButton; Edit4: TEdit; Label3: TLabel; Button1: TButton; procedure Button1Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button4Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; l,s,b,int,a,m,i:integer; pilihan:string;implementation{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);//acakbeginedit1.text:=edit4.Text;listbox1.items.Clear;listbox2.items.Clear;m:=strtoint(edit1.text);for i:=1 to m dobeginlistbox1.items.Add(inttostr(i));end;beginrepeati:=listbox1.ItemIndex;m:=strtoint(edit1.Text);

for a:= 1 to m dobeginint:=random(m);end;

17

pilihan:=listbox1.Items[int];listbox2.Items.Add(pilihan);listbox1.Items.Delete(int);

b:=m-1;edit1.Text:=inttostr(b);until edit1.text='0';exit;end;end;procedure TForm1.Button3Click(Sender: TObject);//tutupbeginclose;end; procedure TForm1.Button2Click(Sender: TObject);//nextbegins:=strtoint(edit2.text);edit3.Text:=listbox2.Items[s];edit2.Text:=inttostr((s)+1);

if edit2.text = edit4.Text thenshowmessage('Nomor berakhir');end;

procedure TForm1.Button4Click(Sender: TObject);//backbegins:=strtoint(edit2.text);l:=s-1;edit3.Text:=listbox2.Items[l];edit2.Text:=inttostr((s)-1);

if edit2.text = '0' thenshowmessage('Angka belum ditentukan');end;

end.

Jawaban Siswa

18

unit Kunci;interface

usesWindows, Messages, SysUtils, Variants, Classes,Graphics, Controls,Forms, Dialogs, StdCtrls, ExtCtrls, OleCtnrs,inifiles,printers,cxGraphics, cxControls, cxLookAndFeels,cxLookAndFeelPainters,cxContainer, cxEdit,dxSkinsCore, dxSkinBlack, dxSkinBlue,dxSkinCaramel, dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide,dxSkinFoggy, dxSkinGlassOceans, dxSkiniMaginary, dxSkinLilian,dxSkinLiquidSky, dxSkinLondonLiquidSky, dxSkinMcSkin,dxSkinMoneyTwins, dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green,dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black,dxSkinOffice2010Blue,dxSkinOffice2010Silver, dxSkinPumpkin,dxSkinSeven, dxSkinSharp, dxSkinSilver, dxSkinSpringTime,dxSkinStardust, dxSkinSummer2008, dxSkinsDefaultPainters, dxSkinValentine,dxSkinXmas2008Blue, cxProgressBar, Buttons, jpeg, Menus, cxButtons;

type TForm1 = class(TForm) GroupBox1: TGroupBox;

19

Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Edit1: TEdit; ComboBox1: TComboBox; ComboBox2: TComboBox; ComboBox3: TComboBox; ComboBox4: TComboBox; Edit2: TEdit; Button1: TButton; GroupBox2: TGroupBox; Panel1: TPanel; Button2: TButton; RadioButton1: TRadioButton; RadioButton2: TRadioButton; RadioButton3: TRadioButton; RadioButton4: TRadioButton; RadioButton5: TRadioButton; OleContainer1: TOleContainer; GroupBox3: TGroupBox; GroupBox4: TGroupBox; GroupBox5: TGroupBox; Button4: TButton; Button5: TButton; Memo1: TMemo; Memo2: TMemo; Timer1: TTimer; PrinterSetupDialog1: TPrinterSetupDialog; Timer2: TTimer; Label9: TLabel; Edit5: TEdit; Edit6: TEdit; Label10: TLabel; Label11: TLabel; Edit7: TEdit; Label8: TLabel; Edit4: TEdit; cxProgressBar1: TcxProgressBar; Label7: TLabel; Label12: TLabel; Edit8: TEdit; Label13: TLabel; Edit9: TEdit;

20

Label14: TLabel; Label15: TLabel; Edit10: TEdit; Button3: TButton; ListBox1: TListBox; ListBox2: TListBox; Edit11: TEdit; Edit12: TEdit; Label18: TLabel; Edit13: TEdit; ListBox3: TListBox; SpeedButton1: TSpeedButton; Label16: TLabel; Label17: TLabel; Label19: TLabel; Image1: TImage; Edit3: TEdit; Label20: TLabel; procedure Timer1Timer(Sender: TObject); procedure Button1Click(Sender: TObject); procedure Edit2Enter(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Timer2Timer(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button9Click(Sender: TObject); procedure SpeedButton1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; mailini:Tinifile; f:textfile; m,waktu,i,int,a,soal,sisa,n:integer; l,b,s,aa,ab,ac,ad,ae,af,ag,ah,ai,aj:integer; ba,bb,bc,bd,be,bf,bg,bh,bi,bj,indeks,k:integer; ca,cb,cc,cd,ce,cf,cg,ch,ci,cj:integer; da,db,dc,dd,de,df,dg,dh,di,dj:integer; ea,eb,ec,ed,ee,ef,eg,eh,ei,ej:integer; pilihan:string;nilaia,nilaib,nilaic,nilaid,nilaie,total:integer;

21

c,butir:integer; nilai:real;implementation

{$R *.dfm}//waktuprocedure TForm1.Timer1Timer(Sender: TObject);beginEdit5.Text:=formatdatetime('dd mmmm yyyy',now);edit6.Text:=formatdatetime('hh:mm:ss',now);end;

procedure TForm1.Button1Click(Sender: TObject);begin//tampilkan edit ke memomemo1.Lines.Clear;Memo1.Lines.add('===================================================');memo1.lines.add('HASIL UJIAN '+combobox4.Text+' TINGKAT '+combobox1.Text);memo1.lines.add('TAHUN '+edit2.Text);memo1.lines.add('===================================================');memo1.Lines.add('Nama Peserta: '+Edit1.Text);Memo1.lines.add('Bidang Study: '+Combobox2.Text);MEmo1.Lines.Add('Kelas: '+combobox3.text);Memo1.Lines.Add('Dilaksanakan Pada Tanggal: '+edit5.text+' Jam: '+edit6.text);Memo2.Lines.Clear;Memo2.Lines.LoadFromFile(combobox2.Text+combobox1.text+combobox3.Text+combobox4.text+edit2.text+'.dor');

begin//set isi memo berdasar file mail ini yang tersimpanMailIni:=TIniFile.Create(extractFilePath(paramstr(0))+combobox2.text+combobox1.text+combobox3.text+combobox4.text+edit2.text+'.dor');with mailini dobeginedit8.text:=readstring('smtp','Jumlah Soal','');edit7.Text:=readstring('smtp','Alokasi Waktu','');Memo1.Lines.add('Jumlah Soal : '+edit8.Text);waktu:=strtoint(edit7.Text);edit4.Text:=edit7.Text;timer2.Enabled:=true;

22

edit11.Text:=edit8.Text;

begin// aktifkan groupbox5 dan 2groupbox5.Enabled:=true;groupbox2.Enabled:=true;end;

beginedit9.Text:=edit8.Text;end;listbox1.items.Clear;listbox2.items.Clear;m:=strtoint(edit11.text);for i:=1 to m dobeginlistbox1.items.Add(inttostr(i));end;begin

//memindahkan listbox 1 ke 2 beginrepeat i:=listbox1.ItemIndex;m:=strtoint(edit11.Text);

for a:= 1 to m dobeginint:=random(m);end;

pilihan:=listbox1.Items[int];listbox2.Items.Add(pilihan);listbox1.Items.Delete(int);

b:=m-1;edit11.Text:=inttostr(b);until edit11.text='0';end; begins:=strtoint(edit12.text)-1;edit13.Text:=listbox2.Items[s];

//menambahkan angka nolc:=strtoint(edit13.Text);if c < 10 then

23

edit3.Text:='0'+edit13.Text elseedit3.Text:=edit13.Text;end;

//Buka ole container dengan file yang ditentukanolecontainer1.LoadFromFile(combobox2.Text+combobox1.Text+combobox3.Text+combobox4.text+edit3.text+'.obj');end;end; end; end;

procedure TForm1.Edit2Enter(Sender: TObject);begin//aktifkan tombolButton1.enabled:=true;end;

procedure TForm1.Button4Click(Sender: TObject);begin//cek jawaban 1 - 10for l:=1 to 50 dobeginlistbox3.items.Add('ABCDE');end;

if memo2.Lines[3]=listbox3.Items[0] thenaa:=1;if memo2.Lines[4]=listbox3.Items[1] thenab:=1;if memo2.Lines[5]=listbox3.Items[2] thenac:=1;if memo2.Lines[6]=listbox3.Items[3] thenad:=1;if memo2.Lines[7]=listbox3.Items[4] thenae:=1;if memo2.Lines[8]=listbox3.Items[5] thenaf:=1;if memo2.Lines[9]=listbox3.Items[6] thenag:=1;if memo2.Lines[10]=listbox3.Items[7] thenah:=1;if memo2.Lines[11]=listbox3.Items[8] thenai:=1;if memo2.Lines[12]=listbox3.Items[9] then

24

aj:=1;

//cek jawaban peserta 11 - 20if memo2.Lines[13]=listbox3.Items[10] thenba:=1;if memo2.Lines[14]=listbox3.Items[11] thenbb:=1;if memo2.Lines[15]=listbox3.Items[12] thenbc:=1;if memo2.Lines[16]=listbox3.Items[13] thenbd:=1;if memo2.Lines[17]=listbox3.Items[14] thenbe:=1;if memo2.Lines[18]=listbox3.Items[15] thenbf:=1;if memo2.Lines[19]=listbox3.Items[16] thenbg:=1;if memo2.Lines[20]=listbox3.Items[17] thenbh:=1;if memo2.Lines[21]=listbox3.Items[18] thenbi:=1;if memo2.Lines[22]=listbox3.Items[19] thenbj:=1;

//cek jawaban peserta 21 - 30if memo2.Lines[23]=listbox3.Items[20] thenca:=1;if memo2.Lines[24]=listbox3.Items[21] thencb:=1;if memo2.Lines[25]=listbox3.Items[22] thencc:=1;if memo2.Lines[26]=listbox3.Items[23] thencd:=1;if memo2.Lines[27]=listbox3.Items[24] thence:=1;if memo2.Lines[28]=listbox3.Items[25] thencf:=1;if memo2.Lines[29]=listbox3.Items[26] thencg:=1;if memo2.Lines[30]=listbox3.Items[27] thench:=1;if memo2.Lines[31]=listbox3.Items[28] thenci:=1;if memo2.Lines[32]=listbox3.Items[29] thencj:=1;

25

//cek jawaban peserta 31 - 40if memo2.Lines[33]=listbox3.Items[30] thenda:=1;if memo2.Lines[34]=listbox3.Items[31] thendb:=1;if memo2.Lines[35]=listbox3.Items[32] thendc:=1;if memo2.Lines[36]=listbox3.Items[33] thendd:=1;if memo2.Lines[37]=listbox3.Items[34] thende:=1;if memo2.Lines[38]=listbox3.Items[35] thendf:=1;if memo2.Lines[39]=listbox3.Items[36] thendg:=1;if memo2.Lines[40]=listbox3.Items[37] thendh:=1;if memo2.Lines[41]=listbox3.Items[38] thendi:=1;if memo2.Lines[42]=listbox3.Items[39] thendj:=1;

//cek jawaban peserta 41 - 50if memo2.Lines[43]=listbox3.Items[40] thenea:=1;if memo2.Lines[44]=listbox3.Items[41] theneb:=1;if memo2.Lines[45]=listbox3.Items[42] thenec:=1;if memo2.Lines[46]=listbox3.Items[43] thened:=1;if memo2.Lines[47]=listbox3.Items[44] thenee:=1;if memo2.Lines[48]=listbox3.Items[45] thenef:=1;if memo2.Lines[49]=listbox3.Items[46] theneg:=1;if memo2.Lines[50]=listbox3.Items[47] theneh:=1;if memo2.Lines[51]=listbox3.Items[48] thenei:=1;if memo2.Lines[52]=listbox3.Items[49] thenej:=1;

begintimer2.Enabled:=false;

26

end;end;

procedure TForm1.Button5Click(Sender: TObject);begin//cetak memo 1 if printersetupdialog1.Execute() then begin assignPrn(f); try rewrite(f); writeln(f,memo1.text); finally closeFile(f); end;end;end;

procedure TForm1.Button3Click(Sender: TObject);begin//hitung dan tampil nilaibutton4.Click;if MessageDlg('Akhiri Ujian?',mtConfirmation,[mbYes,mbNo],0)=mrYes thenbeginnilaia:=aa+ab+ac+ad+ae+af+ag+ah+ai+aj;nilaib:=ba+bb+bc+bd+be+bf+bg+bh+bi+bj;nilaic:=ca+cb+cc+cd+ce+cf+cg+ch+ci+cj;nilaid:=da+db+dc+dd+de+df+dg+dh+di+dj;nilaie:=ea+eb+ec+ed+ee+ef+eg+eh+ei+ej;total:=nilaia+nilaib+nilaic+nilaid+nilaie;butir:=strtoint(edit8.Text);nilai:=100*total/butir;edit10.Text:=floattostr(nilai);Memo1.lines.add('Dengan Nilai : '+edit10.text);showmessage('Peserta: '+edit1.Text+' Dengan Nilai: '+EDIT10.Text);

//menyimpan file dengan ekstensi *.rtfmemo1.lines.savetofile(Edit1.text+combobox2.Text+combobox3.Text+combobox4.Text+edit2.text+'.rtf');Speedbutton1.Enabled:=true;Panel1.Enabled:=false;Groupbox2.enabled:=false;Groupbox1.enabled:=false;end;

27

end;

procedure TForm1.Timer2Timer(Sender: TObject);begin//progress dan sisa waktuWaktu:=waktu-1;edit4.Text:=inttostr(waktu);cxprogressbar1.Properties.Max:=strtoint(edit7.Text);cxProgressbar1.Position:=strtoint(edit4.Text);

//waktu habisif edit4.text='0' thenbegintimer2.Enabled:=false;Showmessage('Waktu Ujian Habis');panel1.Enabled:=false;button3.Click;end;end;

procedure TForm1.Button2Click(Sender: TObject);begin//check jawabans:=strtoint(edit12.text);if edit9.text='1' thenbutton2.Enabled:=false;if radiobutton1.Checked=true thenlistbox3.Items.Add(edit3.text+'=A');if radiobutton2.Checked=true thenlistbox3.Items.Add(edit3.text+'=B');if radiobutton3.Checked=true thenlistbox3.Items.Add(edit3.text+'=C');if radiobutton4.Checked=true thenlistbox3.Items.Add(edit3.text+'=D');if radiobutton5.Checked=true thenlistbox3.Items.Add(edit3.text+'=E');

//cek sisa soal beginif edit9.text='1' thenexit;end;

//nomor soaledit13.Text:=listbox2.Items[s];edit12.Text:=inttostr((s)+1);

28

//menambahkan angka nolc:=strtoint(edit13.Text);if c < 10 thenedit3.Text:='0'+edit13.Text elseedit3.Text:=edit13.Text;

//load ole containerolecontainer1.LoadFromFile(combobox2.Text+combobox1.Text+combobox3.Text+combobox4.text+edit3.text+'.obj');

//sisa soalbeginsoal:=strtoint(edit9.Text);sisa:=soal-1;edit9.Text:=inttostr(sisa); end; end; procedure TForm1.Button9Click(Sender: TObject);begin//check soal sebelumnya{s:=strtoint(edit12.text);l:=s-1;edit13.Text:=listbox2.Items[l];edit12.Text:=inttostr((s)-1);

if edit12.text = '0' thenbeginshowmessage('Awal Soal');button9.Enabled:=false;end;

olecontainer1.LoadFromFile(combobox2.Text+combobox1.Text+combobox3.Text+combobox4.text+edit13.text+'.obj');}end;

procedure TForm1.SpeedButton1Click(Sender: TObject);begin//tombol tutup aplikasiApplication.Terminate;end;end.Memo ke Caption

29

unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm1 = class(TForm) Memo1: TMemo; Edit1: TEdit; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;var Form1: TForm1;implementation{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);begin edit1.Text:=memo1.Lines[1];end;end.

Memo ke Memo

30

unit memo2memo;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm1 = class(TForm) Memo1: TMemo; Memo2: TMemo; Button1: TButton; Button2: TButton; Label1: TLabel; Button3: TButton; Edit1: TEdit; Edit2: TEdit; Button4: TButton; Button5: TButton; Button6: TButton; Button7: TButton; Button8: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; a,c,d,e,i,m,b,int:integer;

implementation

31

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);beginmemo2.Lines.clear;memo2.Lines.add(memo1.Lines[0]);memo2.lines.add(memo1.lines[1]);end;

Ole Objek

unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtnrs;

type TForm1 = class(TForm) OleContainer1: TOleContainer; Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations } end;

var Form1: TForm1;

implementation

{$R *.dfm}

32

procedure TForm1.Button1Click(Sender: TObject);beginolecontainer1.InsertObjectDialog;end;

procedure TForm1.Button2Click(Sender: TObject);beginif olecontainer1.State=osempty thenbeginmessagedlg('Objek OLE belum ditentukan',mtinformation,[mbOK],0);exit;end;if button2.Caption='Edit OLE' thenbeginbutTon2.caption:='menutup objek ole';olecontainer1.DoVerb(ovprimary);endelsebeginbutton2.Caption:='Edit OLE';olecontainer1.Close;end; end;procedure TForm1.FormCreate(Sender: TObject);beginif fileexists('OLE.TMP') thenolecontainer1.LoadFromFile('ole.tmp');end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);beginif olecontainer1.State<>osempty thenolecontainer1.SaveToFile('OLE.TMP');end;

end.

Random 1unit Rand;

interface

uses

33

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;

type TForm1 = class(TForm) Timer1: TTimer; Label1: TLabel; Edit1: TEdit; procedure Timer1Timer(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; S: string; i, N: integer; const Chars = '0123456789';

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);begin Randomize; S := ''; for i := 1 to 2 do begin {... menampilkan 2 digit character...} N := Random(Length(Chars)) + 1; S := S + Chars[N]; end; Edit1.Text := S;end;end.

Random 2

unit Rndom;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

34

type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit; Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; S: string; i,N,m,p: integer;

const Chars = '0123456789';

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);beginmemo1.Lines.Clear; p:=strtoint(edit1.Text); m:=1;repeat m:=m+1; Randomize; S := ''; for i := 1 to 2 do begin {... menampilkan 2 digit character...} N := Random(Length(Chars)) + 1; S := S + Chars[N]; end; Edit2.Text := S; memo1.Lines.add(edit2.Text); until m=p+1;end;end.

35

Random 3unit Rndom;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit; Memo1: TMemo; Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; S: string; i,N,m,p: integer; const Chars = '0123456789';

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);beginmemo1.Lines.Clear; p:=strtoint(edit1.Text); m:=1;repeat m:=m+1; Randomize; S := ''; for i := 1 to 2 do begin {... menampilkan 2 digit character...}

36

N := Random(Length(Chars)) + 1; S := S + Chars[N]; end; Edit2.Text := S; memo1.Lines.add(edit2.Text); until m=p+1;end;end.

Random 4unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Button1: TButton; Memo1: TMemo; Label2: TLabel; Edit2: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; int : Integer; i,m : Integer;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);beginmemo1.Lines.Clear;m:= strtoint(edit2.Text);

for i := 1 to m do

37

begin int := 1 + Random(m); // Nilai m memberikan kisaran 0..m edit1.Text:=inttostr(int); memo1.Lines.Add(inttostr(int)); end;end;end.

Salin ke Memo

unit Tulis;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ExtCtrls, StdCtrls, printers;

type TForm1 = class(TForm) Label1: TLabel; Edit1: TEdit; Label2: TLabel; Edit2: TEdit; RadioGroup1: TRadioGroup; ComboBox1: TComboBox; Label3: TLabel; Label4: TLabel; CheckBox1: TCheckBox; CheckBox2: TCheckBox; CheckBox3: TCheckBox; CheckBox4: TCheckBox; CheckBox5: TCheckBox; Edit3: TEdit; Button1: TButton; Button2: TButton; Button3: TButton;

38

Memo1: TMemo; Timer1: TTimer; Label5: TLabel; Edit4: TEdit; Button4: TButton; SaveDialog1: TSaveDialog; Button5: TButton; OpenDialog1: TOpenDialog; Button6: TButton; PrinterSetupDialog1: TPrinterSetupDialog; Button7: TButton; procedure Timer1Timer(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); procedure RadioGroup1Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure Button5Click(Sender: TObject); procedure Button6Click(Sender: TObject); procedure Button7Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1; jk,namafile:string; hobi:string; f:textfile;

implementation

{$R *.dfm}

procedure TForm1.Timer1Timer(Sender: TObject);beginEdit1.Text:=TimeToStr(now);Edit4.Text:=FormatDateTime('dd MMMM yyyy',now);end;

procedure TForm1.Button3Click(Sender: TObject);beginApplication.Terminate;end;

39

procedure TForm1.Button2Click(Sender: TObject);beginForm1.Edit2.Text:='';Form1.Edit3.Text:='';Form1.ComboBox1.ItemIndex:=-1;Form1.RadioGroup1.ItemIndex:=-1;Form1.CheckBox1.Checked:=False;Form1.CheckBox2.Checked:=False;Form1.CheckBox3.Checked:=False;Form1.CheckBox4.Checked:=False;Form1.CheckBox5.Checked:=False;end;

procedure TForm1.Button1Click(Sender: TObject);beginif CheckBox1.Checked=True then hobi:=hobi+'Olah Raga, ';if CheckBox2.Checked=True then hobi:=hobi+'Seni, ';if CheckBox3.Checked=True then hobi:=hobi+'Membaca, ';if CheckBox4.Checked=True then hobi:=hobi+'Meneliti, ';

Form1.Memo1.Lines.Add('Data tanggal : '+Edit4.text +' Jam: '+edit1.text);Form1.Memo1.Lines.Add('Nama : '+Edit2.Text);Form1.Memo1.Lines.Add('Agama : '+ComboBox1.Text);Form1.Memo1.Lines.Add('Jenis Kelamin : '+jk);Form1.Memo1.Lines.Add('Hobi : '+hobi);Form1.Memo1.Lines.Add('Hobi Lainnya : '+Edit3.Text);

hobi:='';Form1.Memo1.Lines.Add('');end;

procedure TForm1.RadioGroup1Click(Sender: TObject);begin if RadioGroup1.ItemIndex=0 then jk:='Laki-laki'elsejk:='Perempuan';end;procedure TForm1.Button4Click(Sender: TObject);begin if savedialog1.Execute then begin NamaFile:=SaveDialog1.fileName+'.txt'; memo1.Lines.SaveToFile(namafile);

40

end;end;procedure TForm1.Button5Click(Sender: TObject);beginif opendialog1.Execute thenbeginmemo1.Lines.LoadFromFile(opendialog1.FileName);end;end;

procedure TForm1.Button6Click(Sender: TObject);begin if printersetupdialog1.Execute() then begin assignPrn(f); try rewrite(f); writeln(f,memo1.text); finally closeFile(f); end;end;end;procedure TForm1.Button7Click(Sender: TObject);begin memo1.ReadOnly:=false;end;end.

Save Ini

unit Unit1;interfaceuses

41

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;

type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Button1: TButton; Button2: TButton; Button3: TButton; ComboBox1: TComboBox; ComboBox2: TComboBox; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); private { Private declarations } public { Public declarations } end;

var Form1: TForm1;

implementationuses IniFiles;

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);varmailIni:TIniFile;beginMailIni:=TIniFile.Create(extractFilePath(paramstr(0))+edit2.text+'.ini');with MailIni do beginWriteString('smtp','Nama',Edit2.text);WriteString('smtp','Kelas',Combobox1.Text);WriteString('smtp','Semester',Combobox2.text);WriteString('smtp','Bidang Study',Edit1.text);

42

WriteString('smtp','Sekolah',edit3.text);end;

MailIni.Free;end;

procedure TForm1.Button2Click(Sender: TObject);varMailIni:TIniFile;beginMailIni:=TIniFile.Create(extractFilePath(paramstr(0))+edit2.text+'.ini');with MailIni do beginedit2.Text:=Readstring('smtp','Nama','');combobox1.Text:=readstring('smtp','Kelas','');combobox2.Text:=readstring('smtp','Semester','');edit1.Text:=readstring('smtp','Bidang Study','');edit3.Text:=readstring('smtp','Sekolah','');end;mailini.Free;end;

procedure TForm1.Button3Click(Sender: TObject);beginedit2.Text:='';edit1.Text:='';edit3.Text:='';combobox1.Text:='';combobox2.Text:='';end;end.

43