![]() |
Emely.Net Banner Exchange |
Buatlah program mari yang mampu menggambar bentuk Lingkaran, Persegi, Garis, Titik, dan dapat menyimpan hasil ke suatu file bmp.

Berikut ini adalah contoh solusi untuk menggambar Lingkaran, yang lainnya adalah tugas anda untuk melengkapinya.
Private Enum Gambar None = 0 Lingkar = 1 Persegi = 2 Garis = 3 Titik = 4 End Enum Dim Aksi As Gambar 'digunakan untuk mengenali aksi pemakai Dim Tahap As Integer 'digunakan untuk menentukan tahap pengambaran Dim Pusatx As Integer 'digunakan untuk Pusat Lingkaran Dim Pusaty As Integer
Private Sub cmdCircle_Click() Aksi = Lingkar 'tandai aksi sebagai menggambar lingkaran Tahap = 1 'mulai dari tahap penentuan pusat lingkaran End Sub
Private Sub PicKanvas_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Aksi = Lingkar Then 'jika aksi gambar lingkaran
If Tahap = 1 Then 'jika tahap 1
Pusatx = X 'simpan pusat lingkaran
Pusaty = Y
Tahap = 2 'tandai tahap berikutnya yaitu penentuan jari-jari
End If
End If
End Sub
Private Sub PicKanvas_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Aksi = Lingkar Then
If Tahap = 2 Then
PicKanvas.Refresh
jari = Sqr((Y - Pusaty) ^ 2 + (X - Pusatx) ^ 2)
PicKanvas.Circle (Pusatx, Pusaty), jari
End If
End If
End Sub
Private Sub PicKanvas_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If Aksi = Lingkar Then
If Tahap = 2 Then
PicKanvas.Refresh
PicKanvas.AutoRedraw = True
jari = Sqr((Y - Pusaty) ^ 2 + (X - Pusatx) ^ 2)
PicKanvas.Circle (Pusatx, Pusaty), jari
PicKanvas.AutoRedraw = False
Aksi = None
End If
End If
End Sub