Dalam contoh ini, kurva sinusoidal digambar langsung pada formulir. Untuk mencegah keluaran grafik yang tidak lengkap selama peralihan jendela, kode kunci untuk menggambar grafik ditempatkan dalam proses OnPaint formulir.
procedureTForm1.FormPaint(Pengirim:TObject);
var
x:Bilangan Bulat;
y,a:Ganda;
mulai
Kanvas.Pena.Lebar:=3;
Canvas.MoveTo(0,Trunc(self.ClientHeight/2));
forx:=0toself.ClientWidthdo
mulai
a:=(x/self.ClientWidth)*2*Pi;
y:=Dosa(a);
y:=(1-y)*self.ClientHeight/2;
Canvas.LineTo(Trunc(x),Trunc(y));
akhir;
akhir;
Program pertama-tama mengatur lebar kuas pada objek Canvas formulir, dan memindahkan titik awal gambar ke posisi (0,Trunc(self.ClientHeight/2)) di formulir. Kemudian ubah nilai sudut dalam periode sinusoidal menjadi nilai radian melalui pernyataan a:=(x/self.ClientWidth)*2*Pi dalam satu loop, dan simpan hasil perhitungan sinus dalam variabel y. Terakhir, pernyataan Canvas.LineTo(Trunc(x),Trunc(y)) dalam loop akan menggambar kurva sinusoidal kontinu pada formulir.
Kode programnya adalah sebagai berikut:
satuanUnit1;
antarmuka
kegunaan
Windows, Pesan, SysUtils, Varian, Kelas, Grafik, Kontrol, Formulir,
Dialog,ExtCtrls,StdCtrls;
jenis
TForm1=kelas(TForm)
procedureFormPaint(Pengirim:TObject);
procedureFormResize(Pengirim:TObject);
procedureFormCreate(Pengirim:TObject);
pribadi
{Deklarasi Pribadi}
publik
{Deklarasi Publik}
akhir;
var
Formulir1:TForm1;
pelaksanaan
{$R*.dfm}
procedureTForm1.FormPaint(Pengirim:TObject);
var
x:Bilangan Bulat;
y,a:Ganda;
mulai
Kanvas.Pena.Lebar:=3;
Canvas.MoveTo(0,Trunc(self.ClientHeight/2));
forx:=0toself.ClientWidthdo
mulai
a:=(x/self.ClientWidth)*2*Pi;
y:=Dosa(a);
y:=(1-y)*self.ClientHeight/2;
Canvas.LineTo(Trunc(x),Trunc(y));
akhir;
akhir;
procedureTForm1.FormResize(Pengirim:TObject);
mulai
Menyegarkan;
akhir;
procedureTForm1.FormCreate(Pengirim:TObject);
mulai
mandiri.DoubleBuffered:=true;
//Mencegah grafik berkedip-kedip
akhir;
akhir.
Simpan file dan tekan F9 untuk menjalankan program. Selama program dijalankan, kurva sinusoidal akan otomatis tergambar pada form, dan hasil running ditunjukkan pada Gambar 1.
Gambar 1 Hasil program berjalan
Dengan mempelajari program ini, Anda tidak hanya dapat menggambar kurva sinus, tetapi juga berbagai kurva seperti kurva kosinus dan kurva singgung untuk memudahkan penelitian ilmiah.