Ayúdenme que soy nuevo en VFP

Hola, miren el problema que tengo es que estoy haciendo un proyecto en el cual es una especie de autobús, en el cual tengo que asignar un asiento, donde cada asiento debe llevar el nombre del pasajero, destino, numero de asiento, hora, fecha de registro, costo, cargo por cancelación, origen, en la imagen del enlace de abajo podrán observar como debe de ir:
http://img508.imageshack.us/img508/2013/image1ae0.jpg
http://img508.imageshack.us/img508/2013/image1ae0.jpg
El asunto es que cuando los datos estan capturados el boton debe de cambiar de color
http://img361.imageshack.us/img361/5027/image2sh2.jpg
http://img361.imageshack.us/img361/5027/image2sh2.jpg
Hasta este momento ya se como ponerle color a los "botones/asientos" pero el problema es que no se como hacer para que cada botón guarde los datos, ya que el problema esta en que con el botón de "Limpiar" se deben limpiar todas las casillas y volver a escribir nuevos datos y volver a guardarlos.
No se si me estoy explicando. La cosa es que la lo asientos que ya están ocupados se deben de ver de colores, tal como se ve en la imagen de arriba, y los asientos vacíos se deben de ver en color gris.
Ahora el código que estoy utilizando para el color es el siguiente (este código lo pongo en cada boton/asiento del camión:
thisform.command21.BackColor=RGB(255,0,0)
thisform.text3.Value="asiento1"
Ojala y ustedes me puedan asesorar y orientarme en como debo hacerle para hacer que guarde los datos, saludos y espero sus comentarios.

1 respuesta

Respuesta
1
Crea un arreglo (Array) de 24 elementos, uno por cada asiento. En el evento Refresh del formulario agrega algo similar a:
With ThisForm
For m.nContador = 1 to 24
m.cControl = "Command" + Alltrim( Str ( m.nContador ) )
.&cControl.BackColor = Iif( m.aAsiento[ m.nContador ], RGB(255, 0, 0 ), RGB(128, 128, 128 ) )
Next
EndWith
Suponiendo que en el evento Click del botón/asiento haces la asignación:
** Para el asiento 21
m.aAsiento[21] = .T.
Y en el botón limpiar el código:
m.aAsiento = .F.
Una manera más sencilla de hacerlo es establecer en cada botón/asiento la propiedad DisabledBackColor = RGB( 255, 0, 0 )
Y en el evento Click de cada botón/asiento:
This.Enabled = .F.
Y en el botón Limpiar:
ThisForm. SetAll( "Enabled", .T., "CommandButton")

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas