elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Guía rápida para descarga de herramientas gratuitas de seguridad y desinfección


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP)
| | | |-+  Programación Visual Basic (Moderadores: LeandroA, seba123neo)
| | | | |-+  abrir varios formularios desde un solo formulario
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: abrir varios formularios desde un solo formulario  (Leído 2,847 veces)
creiko

Desconectado Desconectado

Mensajes: 44


Ver Perfil
abrir varios formularios desde un solo formulario
« en: 12 Septiembre 2016, 04:43 am »

buenas noches una pregunta



tengo que hacer este  programa que tenga 5 formularios:

1. Se debe Generar el Numero aleatorio del 1 al 25 en cada uno de los tres tableros

2. Se debe Llenar todo el Tablero para ganar

3. Debe haber la opción de manual y automático.

4. En cada tablero se debe llevar las cuentas de buenas y malas.

5 Realizar los 4 formularios pequeños de tal manera que se deben poder ver los 4 a la vez
Formulario 1

6. Desde este formulario se juega se debe poder jugar automático o manual.

tengo lo que me piden en un solo formulario.  los 15 números aleatorios y sin repetirse, el generador de la letra y el numero, el contador de buenas y malas , la parte de forma manual y automático

he visto una orden que es
Dim frm As New Form2()
frm.Show()

me abre los 5 cartones pero no logro. que se me generen los 15 números diferentes en cada cartón y el contador de buenas y malas en cada unos de ellos. y cuando uno de estos se llene me diga ganaste con el cartón ejemplo (cartón numero 2)

si alguien me brinda una ayuda los agradecería


« Última modificación: 12 Septiembre 2016, 05:14 am por creiko » En línea

okik


Desconectado Desconectado

Mensajes: 462


Ver Perfil
Re: abrir varios formularios desde un solo formulario
« Respuesta #1 en: 12 Septiembre 2016, 13:59 pm »

hombre compañero no querrás que te hagamos el programa entero.
Deberías añadir algo de código y digas donde te da el problema o falla.

¿Cómo generas los números aleatorios? dices que no te los crea, ¿Cómo lo haces? ¿Has usado RANDOM?

Esto generaría un número aleatorio de 1 al 15
Código
  1. Private Sub Form_Load()
  2. Dim N As Integer
  3. Randomize
  4. Me.Show
  5. N = Int((Rnd * 15) + 1)
  6. Print N
  7. End Sub


Funcionamiento del RANDOM

Código:
Int(Rnd * (Límite_superior - límite_inferior + 1)  + límite_inferior)

Ejemplos:
==========================================
Si quieres números del 2 a 5:
Límite superior = 5
Límite inferior = 2

Queda:
Código:
N = Int(Rnd * (5 - 2 + 1) + 2)

Resolviendo queda:
Código:
N = Int((Rnd * 4) + 2)


==========================================
Si quieres números del 1 al 15:
Límite superior = 15
Límite inferior = 1

Queda:
Código:
N = Int(Rnd * (15 - 1 + 1) + 1)

Resolviendo queda:
Código:
N = Int((Rnd * 15) + 1)


Para evitar que se repitan:


Esto lo metes en un MÓDULO

Código
  1. Option Explicit
  2. Dim Contador As Integer
  3. Const LimSuperior = 200
  4. Dim lstNumAzar(1 To LimSuperior) As Integer
  5. Public Function NumeroAleatorio(ByVal SizeBucle As Integer) As Integer
  6. 'On Error GoTo EvitarError
  7. Dim i As Integer
  8. Dim strNumAzar As Integer
  9. Dim Repetido As Boolean
  10.  
  11.  
  12. 'reiniciar bucle
  13. If Contador = SizeBucle Then
  14. Contador = 0
  15. strNumAzar = 0
  16. NumeroAleatorio = 0
  17. For i = 1 To LimSuperior
  18. lstNumAzar(i) = 0
  19. Next i
  20. End If
  21. '.................................................
  22.  
  23. Do
  24. If Contador = SizeBucle Then Exit Do
  25. Randomize
  26. Repetido = False
  27.    strNumAzar = Int(Int(SizeBucle) * Rnd) + 1
  28. For i = 1 To SizeBucle
  29.        If lstNumAzar(i) = strNumAzar Then Repetido = True
  30.     Next i
  31. If Repetido = False Then
  32. Contador = Contador + 1
  33. lstNumAzar(Contador) = strNumAzar
  34. NumeroAleatorio = strNumAzar
  35. Repetido = False
  36. End If
  37. DoEvents
  38. Loop While Repetido = True
  39. End Function
  40.  


Desde de un FORM lo llamas así (como ejemplo):
Código
  1. Dim I as integer
  2. Text1.Text = ""
  3. For I = 1 To 15
  4. Text1.Text = Text1.Text & NumeroAleatorio(15) & vbCrLf
  5. Next I
  6.  

Cada vez que se llama a NumeroAleatorio devuelve un número del 1 al 15 distinto. Una vez se obtienen todos si se vuelve a llamar vuelve a empezar



Nota:
la variable SizeBucle antes lo llamé TamañoBucle, pero como el GesSHI de el hacker no acepta la Ñ lo he cambiado a SizeBucle.

El máximo permitido por la función es 200. pero se puede cambiar a otro valor cambiando la constante LimSuperior.




Otro ejemplo de uso:

Código
  1. Option Explicit
  2. Dim CuentaClicks As Integer
  3. Private Sub Command2_Click()
  4.  
  5. If CuentaClicks <= 15 Then
  6.    Text1.Text = ""
  7.    CuentaClicks = CuentaClicks + 1
  8.    Text1.Text = NumeroAleatorio(15)
  9.  
  10.    If CuentaClicks = 15 Then
  11.       MsgBox ("ganaste con el cartón ejemplo cartón numero 1")
  12.       CuentaClicks = 0
  13.    End If
  14. End If
  15.  
  16. End Sub
  17.  

Creas un contador para saber cuando se han generado todo los números.

Suerte con el Bingo


« Última modificación: 12 Septiembre 2016, 14:10 pm por okik » En línea

creiko

Desconectado Desconectado

Mensajes: 44


Ver Perfil
Re: abrir varios formularios desde un solo formulario
« Respuesta #2 en: 12 Septiembre 2016, 15:59 pm »

tengo todo lo que me piden en un solo cartón;  los 15 numero aleatorios, contador de buenas y malas, y el juego se para cuando lleno el cartón y no logro pasar todo eso a los demás cartones.

he visto esta orden que es e pasar de un formulario a otro
Dim frm As New Form2()
frm.Show()

la ayuda es como hago para que toda esa información se pase a los 4 cartones restantes, y  se me generen los 15 números diferentes en cada cartón y el contador de buenas y malas en cada unos de ellos. y cuando uno de estos se llene me diga ganaste con el cartón ejemplo (cartón numero 2)


En línea

okik


Desconectado Desconectado

Mensajes: 462


Ver Perfil
Re: abrir varios formularios desde un solo formulario
« Respuesta #3 en: 12 Septiembre 2016, 16:56 pm »



osea que la ayuda es que yo o cualquiera haga todo esto:
tengo todo lo que me piden en un solo cartón;  los 15 numero aleatorios, contador de buenas y malas, y el juego se para cuando lleno el cartón y no logro pasar todo eso a los demás cartones.

Que por cierto no somos adivinos y no sabemos como as implementado todo eso. Cada cual lo puede hacer de una manera distinta. Y luego que hagamos lo demás, o sea todo.

En resumen que te hagamos el programa.  :¬¬

de nada

En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
usar una variable en varios formularios
Programación Visual Basic
lieberman 6 5,368 Último mensaje 1 Diciembre 2007, 21:00 pm
por zXxOsirisxXz
Juntar formularios en un solo proyecto
Programación Visual Basic
Enemy 2 3,896 Último mensaje 6 Febrero 2008, 16:12 pm
por Enemy
Como utilizar swing de un formulario desde otro formulario???????
Java
h@lv@88 2 4,596 Último mensaje 9 Junio 2008, 00:59 am
por h@lv@88
manipular formulario desde un formulario modal
.NET (C#, VB.NET, ASP)
jhct 1 4,695 Último mensaje 17 Septiembre 2009, 19:32 pm
por Atrum
Cómo cifrar un PDF para que sólo se pueda abrir desde un único PC
Noticias
wolfbcn 1 1,861 Último mensaje 10 Mayo 2018, 15:02 pm
por Serapis
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines