CORES CORES CORES
GENTE, URGENTE POR FAVOR... VOU EXPLICAR:
EU TENHO QUE SELECIONAR DUAS CORES, E COM ELAS FAZER UM DEGRADE EM UM SHAPE OU EM UM FORM, E NÃO TENHO IDéIA DE COMO EU POSSO FAZER AS CONTAS E NEM SEI POR ONDE COMEÇAR... SE ALGUEM MANJA DESSE ASSUNTO POR FAVOR ME AJUDEM, E SE NÃO FOR PEDIR DEMAIS, SEM USAR API'S...
é URGENTISSIMO PESSOAL, DESDE JàAGRADEÇO A ATENÇÃO!
EU TENHO QUE SELECIONAR DUAS CORES, E COM ELAS FAZER UM DEGRADE EM UM SHAPE OU EM UM FORM, E NÃO TENHO IDéIA DE COMO EU POSSO FAZER AS CONTAS E NEM SEI POR ONDE COMEÇAR... SE ALGUEM MANJA DESSE ASSUNTO POR FAVOR ME AJUDEM, E SE NÃO FOR PEDIR DEMAIS, SEM USAR API'S...
é URGENTISSIMO PESSOAL, DESDE JàAGRADEÇO A ATENÇÃO!
Fala querido, tudo bom? E aquele negócio da Av. Paulista como ficou?
Testa esse código aàpor gentileza:
Coloque isso em um Módulo
[/c]
Testa esse código aàpor gentileza:
Private Sub Form_Load()
Degrade Me
End Sub
Coloque isso em um Módulo
Public Sub Degrade(Obj As Object, Optional Cor1 As Long = -1, Optional Cor2 As Long = vbWhite)
If Cor1 = -1 Then
Cor1 = vbWhite
Cor2 = vbBlack
End If
Dim R As Integer
Dim G As Integer
Dim B As Integer
Dim R2 As Integer
Dim G2 As Integer
Dim B2 As Integer
Dim Col As Integer
Dim ValueRed As Integer
Dim ValueGreen As Integer
Dim ValueBlue As Integer
Obj.Cls
On Error Resume Next
Obj.AutoRedraw = True
Obj.DrawStyle = vbInsideSolid
Obj.DrawMode = vbCopyPen
Obj.ScaleMode = vbPixels
Obj.DrawWidth = 10
Obj.ScaleHeight = 58
Col = (Cor1 And 255)
R = Col And 255
Col = Int(Cor1 / 256)
G = Col And 255
Col = Int(Cor1 / 65536)
B = Col And 255
Col = (Cor2 And 255)
R2 = Col And 255
Col = Int(Cor2 / 256)
G2 = Col And 255
Col = Int(Cor2 / 65536)
B2 = Col And 255
ValueRed = Abs(R - R2) / Obj.ScaleHeight
ValueGreen = Abs(G - G2) / Obj.ScaleHeight
ValueBlue = Abs(B - B2) / Obj.ScaleHeight
If R2 < R Then ValueRed = -ValueRed
If G2 < G Then ValueGreen = -ValueGreen
If B2 < B Then ValueBlue = -ValueBlue
For Y = 0 To Obj.ScaleHeight
R2 = R + ValueRed * Y
G2 = G + ValueGreen * Y
B2 = B + ValueBlue * Y
Obj.Line (0, Y)-(Obj.ScaleWidth, Y), RGB(R2, G2, B2)
Next Y
Obj.AutoRedraw = False
End Sub
[/c]
Cara Valeu pela resposta.. sobre aquele negócio da av. paulista estou na empresa a 4 dias por isso não estou no MSN... e estou aproveitando a HOra de folga para acessar a NET :D
Obrigado pela ajuda mlkão, tenha uma Boa Tarde ae :D
Obrigado pela ajuda mlkão, tenha uma Boa Tarde ae :D
Tópico encerrado , respostas não são mais permitidas