Programación General > Visual Basic para principiantes
alguien que me ayude por favor
(1/1)
aledefa:
buenas tardes estoy haciendo un codigo en visual basic soy estudiante del 2 ano de electricidad en telecomunicaciones y estamos empezando con visual soyy muy principiante...
agradeceria mucho a quien pueda ayudarme !!
me han mandado hacer un programa que tenga un circulo de leds ( simulados con shapes )
y que posea un frame con tres opciones ( sentido horario, antihorario y titilar )
ya la mayyor parte la he hecho ahora no se como hacer para q los 12 shapes ( leds en mi caso) titilen cuando le de a la opcion del frame de titilar .. estoy usando tres clocks uno para el sentido horario otro parael sentido antihorario y otro para titilar aqui les dejo un poco el codigo que he realizado a ver sialguien me puede ayudarr ... gracias de antesmano
Dim a As Integer
Dim flag As Integer
Dim b As Integer
Private Sub Command1_Click()
Shape1.FillColor = vbGreen
Shape2.FillColor = vbGreen
Shape12.FillColor = vbGreen
Shape11.FillColor = vbGreen
End Sub
Private Sub Command2_Click()
Shape3.FillColor = vbRed
Shape7.FillColor = vbRed
Shape8.FillColor = vbRed
Shape9.FillColor = vbRed
Shape6.FillColor = vbRed
End Sub
Private Sub Command3_Click()
Shape5.FillColor = vbYellow
Shape4.FillColor = vbYellow
Shape10.FillColor = vbYellow
End Sub
Private Sub Form_Load()
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
End Sub
Private Sub Option1_Click()
Timer1.Enabled = True
a = 1
End Sub
Private Sub Option2_Click()
Timer2.Enabled = True
b = 1
End Sub
Private Sub Option3_Click()
Timer3.Enabled = False
flag = 1
End Sub
Private Sub Timer1_Timer()
Timer1.Enabled = False
Select Case a
Case 1
Shape1.FillColor = vbGreen
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 2
Shape3.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 3
Shape7.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 4
Shape8.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 5
Shape9.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 6
Shape6.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 7
Shape5.FillColor = vbYellow
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 8
Shape4.FillColor = vbYellow
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 9
Shape10.FillColor = vbYellow
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 10
Shape11.FillColor = vbGreen
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 11
Shape12.FillColor = vbGreen
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Case 12
Shape2.FillColor = vbGreen
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case Else
a = 0
End Select
a = a + 1
Timer1.Enabled = True
End Sub
Private Sub Timer2_Timer()
Timer2.Enabled = False
Select Case b
Case 1
Shape1.FillColor = vbGreen
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 2
Shape2.FillColor = vbGreen
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 3
Shape12.FillColor = vbGreen
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Case 4
Shape11.FillColor = vbGreen
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 5
Shape10.FillColor = vbYellow
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 6
Shape4.FillColor = vbYellow
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 7
Shape5.FillColor = vbYellow
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 8
Shape6.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 9
Shape9.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 10
Shape8.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 11
Shape7.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape3.FillColor = vbWhite
Shape3.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case 12
Shape3.FillColor = vbRed
Shape1.FillColor = vbWhite
Shape1.FillStyle = 0
Shape2.FillColor = vbWhite
Shape2.FillStyle = 0
Shape4.FillColor = vbWhite
Shape4.FillStyle = 0
Shape5.FillColor = vbWhite
Shape5.FillStyle = 0
Shape6.FillColor = vbWhite
Shape6.FillStyle = 0
Shape7.FillColor = vbWhite
Shape7.FillStyle = 0
Shape8.FillColor = vbWhite
Shape8.FillStyle = 0
Shape9.FillColor = vbWhite
Shape9.FillStyle = 0
Shape10.FillColor = vbWhite
Shape10.FillStyle = 0
Shape11.FillColor = vbWhite
Shape11.FillStyle = 0
Shape12.FillColor = vbWhite
Shape12.FillStyle = 0
Case Else
b = 0
End Select
b = b + 1
Timer2.Enabled = True
End Sub
Private Sub Timer3_Timer() |||*** es aqui donde quiero que me titilen los leds ****|||||||
Timer3.Enabled = False
If flag = 0 Then
Shape1.FillColor = vbGreen
flag = 1
Else
Shape1.FillColor = vbWhite
End If
Timer3.Enabled = True
End Sub
Nebire:
Es bastante sencillo...
Te pongo un código que espero que te resulte fácil de entender
En el formulario hay que añadir 1 SOLO timer que llamamos TimLed
Añadimos un shape que llamamos ShaLed es una matriz, al primero le pones el índice 0 (en diseño) , los restantes los cargamos por código
Añadimos un frame llamado frame1 y tres controles option llamados option1, forman una matriz tiene índices 0,1 y 2 . Para que coincida con elcódigo al indice 0
le ponemos el caption de 'horario ', al 1 "antihorario" y al 2 "parpadeante"...
Eso es todo copias y pegas el código y le das ejecutar...
una imagen del resultado:
--- Código: Visual Basic --- Private Enum ModoIluminado LUM_HORARIO = 0 LUM_ANTI_HORARIO = 1 LUM_PARAPDEO = 2End Enum Private Const Encendido = vbRed ' color del led encendidoPrivate Const Apagado = &HC0C0FF ' color del led apagadoPrivate Ilumina As ModoIluminado ' modo en que se iluminan los ledsPrivate LedActual As Byte ' led que se enciende actualmente Private Sub Form_Load() Dim k As Single, x As Single, y As Single Dim radian As Single Dim resp As VbMsgBoxResult ' mostramos el formulario para ir viendo (si vamos paso a paso) como se realizan estas acciones. Me.Show ' damos forma al shape With ShaLed(0) .Move .Width, .Height .FillStyle = 0 ' sólido .FillColor = Apagado .Shape = 3 ' círculo End With ' Cramos dinámicamente los otros 11 leds... For k = 1 To 11 Load ShaLed(k) ShaLed(k).Move ShaLed(k - 1).Left + ShaLed(k).Width ShaLed(k).Visible = True Next ' aseguramos unas medidas y dividimos el form. en 4 cuadrantes de 120 partes cada una Me.ScaleMode = vbPixels Me.Width = ScaleX(640, vbPixels, vbTwips) Me.Height = Me.Width Me.Scale (-120, -120)-(120, 120) ' centramos el frame.. Frame1.Move -Frame1.Width / 2, -Frame1.Height / 2 ' posicionamos los leds en círculo respecto del centro (cordenada 0,0 For k = 0 To 11 radian = 6.28 / 12 * k x = Cos(radian) * 60 + Sin(radian) * 60 y = Cos(radian) * 60 - Sin(radian) * 60 ShaLed(k).Move x - 15, y - 15 Next TimLed.Interval = 100 ' un tiempo que permita apreciar el cambio. LedActual = 0 resp = InputBox("Elija el modo inicial de iluminación:" & vbCrLf & "0 : Iluminación en sentido horario." & vbCrLf & "1 : Iluminación en sentido antihorario." & vbCrLf & "2 : Iluminación parpadeante alterna." & vbCrLf & "cualquier otra plsación se interpreta como 0", "Iniciamos, la iluminación de los leds...", "0") If resp < 1 Or resp > 2 Then resp = 0 ' desactivamos previamente toodas las opciones, para que al activar uno, se invoque la rutina... For k = 0 To 2 Option1(k).Value = False Next Option1(CInt(resp)).Value = TrueEnd Sub Private Sub Option1_Click(Index As Integer) Dim k As Byte ' 1º apagamos el timer TimLed.Enabled = False ' 2º marcamos el modo de iluminación Ilumina = Index ' 3º apagamos todos los leds. For k = 0 To 11 ShaLed(k).FillColor = Apagado Next ' hacemos que el led actual sea el primero, el 0 LedActual = 0 ' 4º ponemos en marcha el nuevo modo de iluminación TimLed.Enabled = TrueEnd Sub ' aquí se ejecuta todoPrivate Sub TimLed_Timer() Dim anterior As Byte If Ilumina = LUM_HORARIO Then ' 1º marcamos el que ahora está encendido para apagarlo If LedActual = 11 Then anterior = 0 Else anterior = LedActual + 1 End If ' 2º lo apagamos ShaLed(anterior).FillColor = Apagado ' 3º marcamos el siguiente para encenderse If LedActual > 0 Then LedActual = LedActual - 1 Else LedActual = 11 End If ' 4º lo encendemos ShaLed(LedActual).FillColor = Encendido ElseIf Ilumina = LUM_ANTI_HORARIO Then ' 1º marcamos el que ahora está encendido para apagarlo If LedActual = 0 Then anterior = 11 Else anterior = LedActual - 1 End If ' 2º lo apagamos ShaLed(anterior).FillColor = Apagado ' 3º marcamos el siguiente para encenderse If LedActual < 11 Then LedActual = LedActual + 1 Else LedActual = 0 End If ' 4º lo encendemos ShaLed(LedActual).FillColor = Encendido Else anterior = LedActual LedActual = (LedActual + 1) Mod 2 For k = 0 To 10 Step 2 ShaLed(k + anterior).FillColor = Apagado ShaLed(k + LedActual).FillColor = Encendido Next End IfEnd Sub
Si tienes problemas o no entiendes algo, pegunta...
Navegación
Ir a la versión completa