• Domingo 19 de Mayo de 2024, 09:00

Autor Tema:  Visual Basic  (Leído 1216 veces)

Casper2004

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
Visual Basic
« en: Jueves 2 de Diciembre de 2004, 21:46 »
0
quiero saber como rehalizar movimientos de una matriz de controles HScroll, ya que me dejaron un formulario con un control HScroll con indices de 0 a 2, para realizar una combinacion de colores, ya tengo el codigo definido para los colores, ahora: tengo un control con tres indices (0-2), el 0 equivale al rojo, 1 al verde, 2 al azul, y quiero que al hacer click con el mouse en cada uno de ellos, estos se muevan de su posicion, osea el 0 al 1, el 1 al 2, el 2 al 0, osea que se muevan aleatoriamente no solo asi, pongo el codigo de mi programa:

'Modulo de Codigo de Form1
Option Explicit
 Dim i As Byte  'Contador
 
Private Sub Command1_Click()
    'Crea copia dinamica independiente de la aplicacion
    Dim Copia As New Form1
    Copia.Move Rnd * Form1.Width / 20, Rnd * Form1.Height / 20
    Copia.Show  'ó Copia. visible=True
End Sub

Private Sub Command2_Click()
    Unload Me   'Llama a Unload
End Sub

Private Sub Form_Load()
    Form1.AutoRedraw = True
    For i = 0 To 2
        HScroll1(i).Min = 0
        HScroll1(i).Max = 255
        HScroll1(i).Value = 0
        Label10(i).Caption = HScroll1(i).Value
        Label11(i).BackColor = Label10(i).Caption
    Next i
    Label12.Caption = RGB(HScroll1(0).Value, HScroll1(1).Value, HScroll1(2).Value)
    Label13.BackColor = Label12.Caption
    Randomize
End Sub

Private Sub Form_Unload(Cancel As Integer)
    'Set .Copia = Nothing    'Investigar
    Unload Me
End Sub


Private Sub HScroll1_Change(Index As Integer)
    'Se pulsó una barra de desplazamiento
    'Index: contiene el indice de la barra pulsada
    Select Case Index
           Case 0   'Rojo
                Label11(0).BackColor = RGB(HScroll1(0).Value, 0, 0)
           Case 1   'Verde
                Label11(1).BackColor = RGB(0, HScroll1(1).Value, 0)
           Case 2   'Azul
                Label11(2).BackColor = RGB(0, 0, HScroll1(2).Value)
    End Select
    Label10(Index).Caption = Label11(Index).BackColor
    Label12.Caption = RGB(HScroll1(0).Value, HScroll1(1).Value, HScroll1(2).Value)
    Label13.BackColor = Label12.Caption
 
End Sub

fap1603

  • Miembro MUY activo
  • ***
  • Mensajes: 135
    • Ver Perfil
Re: Visual Basic
« Respuesta #1 en: Viernes 3 de Diciembre de 2004, 07:43 »
0
Hola, te mando el codigo de lo que te he entendido. Espero te sirva, tb te adjunto un ejecutable.
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
Saludos,

Francisco Ayala Pinazo
Lima - Perú