![]() |
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