Renk Geçişi

Visual Basic & Action script Renk Geçişi Programlama hakkında bilgi paylaş; ‘form üstüne 2 adet commandbutton ve 2 adet PictureBox eklemeniz yeterli… Bir Modül içerisine Enum ...
Cevapla
 
Seçenekler
  #1  
Arama 25-01-2008, 07:04
Banlı
Üyelik Tarihi: 18/09/07
Mesajlar: 1.551
 
     WS-Ticareti: (1)
Blog Yazıları: 1
Teşekkürleri: 0
20 Msg. 27 Tşkr.
Rep Gücü: 0 B737 rep gücü epey yüksek

Renk Geçişi

‘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
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
Alıntı ile Cevapla
Cevapla
Arama Etiketleri: ,



Seçenekler


Benzer Konular
Konu Konu Açanlar Forum Cevaplar Güncel Mesajlar
Üye Rütbelerine Renk Verme viper SMF modifikasyonları 11 18-10-2008 11:32
renk kodları Girly™ Web - Grafik Tasarım - 3D 1 17-02-2008 11:13
Renk Kodları nasıl kullanılır, sayfaya renk kodu ekleme, sayfayı renklendirme, renk kodları hakkında temel bilgiler kadınca Web Dersleri 0 07-02-2008 05:34
e-devlet bilgi toplumuna geçişi hızlandıracak kadınca Haberler 0 22-11-2007 05:03
renk kodları W-S Html kodları 1 21-11-2007 01:13

Webmaster Sitesine Reklam Verin

Webmaster web tasarım online reviews ~ Kadınlar blogu ~ Apple iPhone, iPod Touch ( iTouch ) Forum ~ iPhone