Renk Geçişi

Yazar jawscod2

‘form üstüne 2 adet commandbutton ve 2 adet PictureBox eklemeniz yeterli…

Bir Modül içerisine

Enum GeşiçŞek
dikey = 0
yatay = 1
ÇaprazSol = 2
ÇaprazSağ = 3
End Enum

‘Buradan itibaren for içerisine kopyalayın…
‘Prepare by Shama

Private Sub Geçişiki(İlkRenk As Long, İkinciRenk As Long, GeçişŞekli As GeşiçŞek, PictureBox As PictureBox)
Dim k1, k2, y1, y2, m1, m2, kinc, yinc, minc, renk, wid, oran1, oran2, şekl

PictureBox.AutoRedraw = True
PictureBox.ScaleMode = 3
renk11 = İlkRenk
k1 = (renk11 And &HFF&)
y1 = (renk11 And &HFF00&) / &H100&
m1 = (renk11 And 16711680) / &H10000
renk22 = İkinciRenk
k2 = (renk22 And &HFF&)
y2 = (renk22 And &HFF00&) / &H100&
m2 = (renk22 And 16711680) / &H10000

oran1 = PictureBox.Height / PictureBox.Width
oran2 = PictureBox.Width / PictureBox.Height

wid = PictureBox.ScaleWidth
kinc = (k2 - k1) / wid
yinc = (y2 - y1) / wid
minc = (m2 - m1) / wid

If GeçişŞekli = dikey Then

wid = PictureBox.ScaleWidth
şekl = PictureBox.Height
kinc = (k2 - k1) / wid
yinc = (y2 - y1) / wid
minc = (m2 - m1) / wid

For i = 0 To wid Step 0.5
renk = RGB(k1 + kinc * i, y1 + yinc * i, m1 + minc * i)
PictureBox.Line (i, 0)-(i, şekl), renk
Next i

End If

If GeçişŞekli = yatay Then

wid = PictureBox.ScaleHeight
şekl = PictureBox.Width
kinc = (k2 - k1) / wid
yinc = (y2 - y1) / wid
minc = (m2 - m1) / wid

For i = 0 To wid Step 0.5
renk = RGB(k1 + kinc * i, y1 + yinc * i, m1 + minc * i)
PictureBox.Line (0, i)-(şekl, i), renk
Next i

End If

If GeçişŞekli = ÇaprazSağ Then

For i = 0 To wid Step 0.5
renk = RGB(k1 + kinc * i, y1 + yinc * i, m1 + minc * i)
PictureBox.Line (i, 0)-(-1, oran1 * i), renk
Next i

wid = PictureBox.ScaleHeight
kinc = (k1 - k2) / wid
yinc = (y1 - y2) / wid
minc = (m1 - m2) / wid

For j = 0 To wid Step 0.5
rrenk = RGB(k2 + kinc * j, y2 + yinc * j, m2 + minc * j)
PictureBox.Line (PictureBox.ScaleWidth, j)-(oran2 * j, PictureBox.ScaleHeight), rrenk
Next j

End If

If GeçişŞekli = ÇaprazSol Then

kinc = (k1 - k2) / wid
yinc = (y1 - y2) / wid
minc = (m1 - m2) / wid

For i = 0 To wid Step 0.5
renk = RGB(k2 + kinc * i, y2 + yinc * i, m2 + minc * i)
PictureBox.Line (i, 0)-(PictureBox.Width, oran1 * (PictureBox.Width - i)), renk
Next i

wid = PictureBox.ScaleHeight
kinc = (k1 - k2) / wid
yinc = (y1 - y2) / wid
minc = (m1 - m2) / wid

For j = 0 To wid Step 0.5
rrenk = RGB(k2 + kinc * j, y2 + yinc * j, m2 + minc * j)
PictureBox.Line (0, j)-(oran2 * (PictureBox.Height - j), PictureBox.Height), rrenk
Next j

End If

End Sub

Private Sub GeçişÜç(İlkRenk As Long, İkinciRenk As Long, ÜçüncüRenk As Long, GeçişŞekli As GeşiçŞek, PictureBox As PictureBox)
Dim k1, k2, k3, y1, y2, y3, m1, m2, m3, kinc, yinc, minc, renk, wid, oran1, oran2, şekl

PictureBox.AutoRedraw = True
PictureBox.ScaleMode = 3
renk11 = İlkRenk
k1 = (renk11 And &HFF&)
y1 = (renk11 And &HFF00&) / &H100&
m1 = (renk11 And 16711680) / &H10000
renk22 = İkinciRenk
k2 = (renk22 And &HFF&)
y2 = (renk22 And &HFF00&) / &H100&
m2 = (renk22 And 16711680) / &H10000
renk33 = ÜçüncüRenk
k3 = (renk33 And &HFF&)
y3 = (renk33 And &HFF00&) / &H100&
m3 = (renk33 And 16711680) / &H10000

oran1 = PictureBox.Height / PictureBox.Width
oran2 = PictureBox.Width / PictureBox.Height

If GeçişŞekli = dikey Then

wid = PictureBox.ScaleWidth
şekl = PictureBox.Height
kinc = (k2 - k1) / (wid / 2)
yinc = (y2 - y1) / (wid / 2)
minc = (m2 - m1) / (wid / 2)
For i = 0 To wid / 2 Step 0.5
renk = RGB(k1 + kinc * i, y1 + yinc * i, m1 + minc * i)
PictureBox.Line (i, 0)-(i, şekl), renk
Next
kinc1 = (k3 - k2) / (wid / 2)
yinc1 = (y3 - y2) / (wid / 2)
minc1 = (m3 - m2) / (wid / 2)

For i = 0 To wid / 2 Step 0.5
renk1a = RGB(k2 + kinc1 * i, y2 + yinc1 * i, m2 + minc1 * i)
PictureBox.Line (i + Int((wid / 2)), 0)-(i + Int((wid / 2)), şekl), renk1a
Next

End If

If GeçişŞekli = yatay Then

wid = PictureBox.ScaleHeight
şekl = PictureBox.Width
kinc = (k2 - k1) / (wid / 2)
yinc = (y2 - y1) / (wid / 2)
minc = (m2 - m1) / (wid / 2)
For i = 0 To wid / 2 Step 0.5
renk = RGB(k1 + kinc * i, y1 + yinc * i, m1 + minc * i)
PictureBox.Line (0, i)-(şekl, i), renk
Next i

kinc1 = (k3 - k2) / (wid / 2)
yinc1 = (y3 - y2) / (wid / 2)
minc1 = (m3 - m2) / (wid / 2)

For i = 0 To wid / 2 Step 0.5
renk1a = RGB(k2 + kinc1 * i, y2 + yinc1 * i, m2 + minc1 * i)
PictureBox.Line (0, i + Int((wid / 2)))-(şekl, i + Int((wid / 2))), renk1a
Next

End If

If GeçişŞekli = ÇaprazSağ Then

wid = PictureBox.ScaleWidth
kinc = (k2 - k1) / wid
yinc = (y2 - y1) / wid
minc = (m2 - m1) / wid

For i = 0 To wid Step 0.5
renk = RGB(k1 + kinc * i, y1 + yinc * i, m1 + minc * i)
PictureBox.Line (i, 0)-(-1, oran1 * i), renk
Next i

wid = PictureBox.ScaleHeight
kinc = (k3 - k2) / wid
yinc = (y3 - y2) / wid
minc = (m3 - m2) / wid

For j = 0 To wid Step 0.5
rrenk = RGB(k2 + kinc * j, y2 + yinc * j, m2 + minc * j)
PictureBox.Line (PictureBox.ScaleWidth, j)-(oran2 * j, PictureBox.ScaleHeight), rrenk
Next j

End If

If GeçişŞekli = ÇaprazSol Then

wid = PictureBox.ScaleWidth
kinc = (k1 - k2) / wid
yinc = (y1 - y2) / wid
minc = (m1 - m2) / wid

For i = 0 To wid Step 0.5
renk = RGB(k2 + kinc * i, y2 + yinc * i, m2 + minc * i)
PictureBox.Line (i, 0)-(PictureBox.Width, oran1 * (PictureBox.Width - i)), renk
Next i

wid = PictureBox.ScaleHeight
kinc = (k3 - k2) / wid
yinc = (y3 - y2) / wid
minc = (m3 - m2) / wid

For j = 0 To wid Step 0.5
rrenk = RGB(k2 + kinc * j, y2 + yinc * j, m2 + minc * j)
PictureBox.Line (0, j)-(oran2 * (PictureBox.Height - j), PictureBox.Height), rrenk
Next j

End If

End Sub

Private Sub Command1_Click()
‘ÇaprazSol Yazan Kısmı Değiştirebilirsiniz
Geçişiki Rnd(1) * 16000000, Rnd(1) * 16000000, ÇaprazSol, Picture1
End Sub

Private Sub Command2_Click()
‘ÇaprazSağ Yazan Kısmı Değiştirebilirsiniz
GeçişÜç Rnd(1) * 16000000, Rnd(1) * 16000000, Rnd(1) * 16000000, ÇaprazSağ, Picture2
End Sub

Private Sub Form_Load()
Form1.Height = 4410
Form1.Width = 8580
Command1.Top = 3360
Command1.Left = 480
Command2.Top = 3360
Command2.Left = 4920
Picture1.Top = 0
Picture1.Left = 0
Picture2.Top = 0
Picture2.Left = 4200
Picture1.Height = 3255
Picture1.Width = 4215
Picture2.Height = 3255
Picture2.Width = 4215
Form1.Caption = “Hasan Şama BURSA hasanasama@yahoo.com”
GeçişÜç Rnd(1) * 16000000, Rnd(1) * 16000000, Rnd(1) * 16000000, ÇaprazSağ, Picture2
Geçişiki Rnd(1) * 16000000, Rnd(1) * 16000000, ÇaprazSol, Picture1
End Sub

Bu yazı toplamda 73, bugün ise 1 kez görüntülenmiş

Bu konularda ilginizi çekebilir


Aradığınız bu haberimizde yoksa, alttaki kutucuğa yazarak google yada sitemizde arama yapmak size yardımcı olabilir.
Google
 

CommentYorum

*
Dikkat! Gönder butonuna basmadan önce, aşağıdaki kutuya yan resimdeki kelimeyi yazınız. Resimdeki yazıyı okuyamıyorsanız, üzerine tıklayarak ses ile harfleri dinleyebilirsiniz. Yorumunuz için teşekkür ederiz.
Click to hear an audio file of the anti-spam word


Kapat
E-posta ile paylaş