Necesito hacer un programa en vb6 para controlar un pinball

Estoy fabricando un pinball, escribí un programa en qbasic pero es muy básico, quiero pasarlo a vb6 pero no lo entiendo del todo. Alguien que me oriente

1 Respuesta

Respuesta
1

Podrías transcribirlo ya que los comandos no varìan mucho la diferencia está en la manipulación de Formularios y en alguna que otra orden de VB.

Existe un pequeño programa de nombre QB2VB11.zip (60 kbs) que convierte de qBasic a VB version1.

Leí que si solo deseas ejecutar los programas a 32bits, existe Visual Rapid-Q Basic gratuito y solo incertas tus fuentes y corren en ventana del DOS

http://www.basicguru.com/rapidq

La verdad que esto es lo máximo que podría ayudarte que he trabajado hace muchos años con Basic, qBasic y comence a ver VB pero cambie a otro sistema y estoy bastante olvidado de todo ello.

Ojala pueda servirte algo de lo que te comento.

La siguiente página que tiene una explicación más práctica de como hacerlo... lo copia aquí por si se borra y se pierde el enlace de la página...

Página: http://www.osflash.com/como-convertir-qbasic-a-visual-basic/ 

El lenguaje de programación QBasic sencilla se envía con cada computadora DOS en la década de 1980 y principios de los 90. El lenguaje de Microsoft Visual Basic ha sustituido ya que, lo que permite los aficionados a escribir programas que utilizan la interfaz de Windows en lugar de la línea de comandos. Los dos idiomas son ampliamente compatibles, sin embargo, lo que le permite convertir fácilmente su código QBasic al lenguaje más actual.

Instrucciones

  • 1 Cambiar el nombre de la extensión de archivo de su programa QBasic de ".bas" a ".txt" e ignorar los mensajes de advertencia.

2 Abra Visual Basic y haga doble clic en "botón" en la caja de herramientas para añadirlo a su formulario. Cambie la propiedad texto del botón en el panel derecho de "Inicio".

3 Haga doble clic en el botón para abrir su página de código. Seleccione "Editar"> "Insertar archivo" y seleccione el archivo de texto de código QBasic. Esto hará que su ejecución de código QBasic cuando el usuario hace clic en el botón Inicio.

4 Modifique el código QBasic para ajustarse a los estándares de Visual Basic. Tenga en cuenta la presencia de todas las líneas que se parecen a lo siguiente:

SI INKEY $ = A ENTONCES BEEP

INPUT "Introduzca un número"; Z

Vuelva a colocar con las siguientes líneas de código de Visual Basic, la personalización de los nombres de variables y mensajes rápidos como sea necesario:

Si KeyAscii = 65 Entonces

Bip

Terminara si

Z = InputBox ("Introduzca un número")

Retire cualquier declaración "pantalla" y reemplazar el comando "VENTANA" con "Escala".

5 Haga clic en la flecha verde en la barra de herramientas para ejecutar el programa. Si todo funciona correctamente, haga clic en el botón "Inicio" para ejecutar. Si recibe un error de comando no reconocido, consulte la documentación de Visual Basic para encontrar el reemplazo adecuado para usar en lugar del comando QBasic obsoleta.

¡Gracias!  por tu tiempo, y conocimientos, pero la verdad es que sé las instrucciones y funciones que debo poner en vb6, pero lo que no entiendo es donde, porque en vb6 todo es con eventos de interacción con el usuario, y en lo que yo necesito se tiene que ejecutar todo en segundo plano. entonces no se donde escribir el programa.

Lo que quiero hacer es:

generar una subrutina para que al teclear una letra se incrementen los créditos del flipper, luego una vez que el juego empiece, cuando haga contacto la bola con algún blanco el programa incremente el puntaje en pantalla y emita un sonido asociado y quizás, si se puede, algún trozo de vídeo en la pantalla asociado al mismo evento, para eso hice un hack de teclado,   para simular los contactos de las teclas.

entonces lo que no se es donde poner el programa. ojalá me entiendas 

Perdona la lenta respuesta pero es que no me deba tiempo antes.

Como te mencionaba previamente, hace tiempo que no ocupo VB y poco recuerdo, sin embargo al entrar en terreno de lenguajes de objetos, todos son similares...

En el formulario te creas un objetos tipo textbox y en propiedades le asignas un nombre o lo dejas como estás si prefieres (es decir con nombre TextBox1) y cuando te refieras a és para enviar datos que quisieras ver lo haces del siguiente modo:

Me.TextBox1.Text = "valores a agregar"

Hola ¡Gracias por responder!

Sabes que al parecer no me dí a entender muy bien

Yo se que cada objeto se debe programar por separado, lo que no entiendo es donde escribir el programa que lleva el hilo conductor del mismo, mira este es el programa en qbasic que escribí:

10 cls
screen 12: cls : clear
locate 5, 32: color 4: print "Jimmy's Pinball"
locate 13, 33: color 10: print "­INSERT COINS!"
do until ficha >= 1
a$ = inkey$
if a$ = CHR$(113) then ficha = ficha + 1
loop
if ficha >= 1 then goto creditos

créditos:
cls
screen 12
locate 5, 32: color 4: print "Jimmy's Pinball"
do until a$ = CHR$(100)
locate 13, 34: color 10: print "CREDITOS:"; ficha
locate 14, 32: print "Presiona Start"
a$ = inkey$
if a$ = CHR$(113) then ficha = ficha + 1
loop
do until a$ = CHR$(102)
a$ = inkey$
if a$ = CHR$(101) then ficha = ficha - 1
if a$ = CHR$(101) then juego = juego + 1
locate 15, 32: print "Jugadores : "; juego
if a$ = CHR$(102) then goto 25

loop

25 cls
for s = 1 TO 5
screen 12
color 10
a$ = inkey$
locate 15, 30: print "Bola : "; s
locate 16, 30: print "Creditos : "; ficha
locate 17, 30: print "Jugadores: "; juego
locate 3, 12: print "Jugador 1"
locate 3, 60: print "Jugador 2"
locate 10, 12: print "Jugador 3"
locate 10, 60: print "Jugador 4"
LINE (70, 53)-(180, 83),, B
LINE (70, 163)-(180, 193),, B
LINE (450, 55)-(560, 85),, B
LINE (450, 163)-(560, 193),, B


PUNTAJEP1:

screen 12: color 10
11 locate 5, 14: color 10: print ; p1score
a$ = inkey$
if a$ = CHR$(97) then p1score = p1score + 10
if a$ = CHR$(98) then p1score = p1score + 100
if a$ = CHR$(99) then p1score = p1score + 1000
if a$ = CHR$(27) then goto p2
goto 11

p2:

if juego >= 2 then goto 20 else goto 300
20 screen 12: color 10
21 locate 5, 63: color 10: print ; p2score
a$ = inkey$
if a$ = CHR$(97) then p2score = p2score + 10
if a$ = CHR$(98) then p2score = p2score + 100
if a$ = CHR$(99) then p2score = p2score + 1000
if a$ = CHR$(27) then goto p3
goto 21

p3:

if juego >= 3 then goto 30 else goto 300
30 screen 12: color 10
31 locate 12, 15: color 10: print ; p3score
a$ = inkey$
if a$ = CHR$(97) then p3score = p3score + 10
if a$ = CHR$(98) then p3score = p3score + 100
if a$ = CHR$(99) then p3score = p3score + 1000
if a$ = CHR$(27) then goto p4
goto 31

p4:

if juego = 4 then goto 40 else goto 300
40 screen 12: color 10
41 locate 12, 63: color 10: print ; p4score
a$ = inkey$
if a$ = CHR$(97) then p4score = p4score + 10
if a$ = CHR$(98) then p4score = p4score + 100
if a$ = CHR$(99) then p4score = p4score + 1000
if a$ = CHR$(27) then goto 300
goto 41

300 next s
if ficha > 0 then goto creditos else goto 10

Entonces, el programa es funcional pero aburrido, quiero pasarlo a vb6 para hacerlo más bonito en pantalla porque en Qbasic no hay sonidos ni cambios de letra. O quizás no es necesario que sea vb6, podría ser cualquier otro lenguaje que me permita hacerlo más bonito y con sonido. ¿Qué me recomiendas?

Gracias

Perdona la demora en responder, pero como te he comentado, hace algún tiempo no trabajo con ningún Basic, ni GW ni QUE ni Visual y estoy algo oxidado y para poder darte una respuesta como la que necesitas debería poner a repasarlo de nuevo, pero así no te estaría ayudando en realidad; si quieres mi recomendación como lo haz mencionado te diré que lo mejor es que sigas con la línea de tus conocimientos es decir con el VB (visual basic) de todos modos si quieres aprender un nuevo lenguaje para lo que quieres hacer es mejor el C++...

Ahora si sigues en la línea de VB mirate este manual:

http://mec21.etsii.upm.es/ayudainf/aprendainf/VisualBasic6/vbasic60.pdf 

Todos los lenguajes Visuales pueden hacer las mismas tareas de uno u otro modo, por eso hay que apuntar más bien al objetivo como es tu caso ahora mismo, pero si cambias el lenguaje a veces también cambiará el método.

QUe tengas éxito Jaime.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas