Foros del Web » Programación para mayores de 30 ;) » .NET »

Nadie me puede Ayuda? Por favor

Estas en el tema de Nadie me puede Ayuda? Por favor en el foro de .NET en Foros del Web. Hola, por favor ayudarme seguro que es sencillo pero no se hacerlo. Creo un Hilo con la siguiente funcion: Public childForm As Integer = 0 ...
  #1 (permalink)  
Antiguo 27/04/2006, 07:59
 
Fecha de Ingreso: agosto-2003
Mensajes: 398
Antigüedad: 20 años, 8 meses
Puntos: 0
Nadie me puede Ayuda? Por favor

Hola, por favor ayudarme seguro que es sencillo pero no se hacerlo.

Creo un Hilo con la siguiente funcion:
Public childForm As Integer = 0
Public childForms(500) As Form1

Private Sub new_doc()
childForm += 1
childForms(childForm) = New Form1
childForms(childForm).Text = "Proyecto" & Str(childForm)
childForms(childForm).MdiParent = Me
childForms(childForm).WindowState = FormWindowState.Maximized
childForms(childForm).Show()
End Sub

Haciendo Clic en el Menu para que me cree un Formulario Hijo tengo esto:
Private mThreadOnline As Thread

Private Sub MenuItem9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles mnu_new.Click
mThreadOnline = New Thread(New ThreadStart(AddressOf new_doc))
mThreadOnline.Start()
End Sub

Pero me Da error en la línea siguiente con el Mensaje:

childForms(childForm).MdiParent = Me

Información adicional: Los controles creados en un subproceso no pueden tener controles primarios en un control en un subproceso diferente.

Si alguien lee esto y me puede ayudar por favor se lo pido.
Gracias.
Saludos
  #2 (permalink)  
Antiguo 27/04/2006, 19:13
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
Ese problema se debe a que no puedes tener un thread de esa forma para crear un control o forma podrías ocupar un Delegado usando el MethodInvoker para separar el thread y con ello poder invocar el métod, pero la pregunta que quiero hacerte antes de eso...

Cual es la finalidad de tu código..?? que es lo que pretendes hacer..??

Salu2
__________________
Nadie roba nada ya que en la vida todo se paga . . .

Exentrit - Soluciones SharePoint & Net
  #3 (permalink)  
Antiguo 27/04/2006, 19:13
Avatar de RootK
Moderador
 
Fecha de Ingreso: febrero-2002
Ubicación: México D.F
Mensajes: 8.004
Antigüedad: 22 años, 2 meses
Puntos: 50
..por cierto trata de poner títulos mas descriptivos... echale un ojo a mi firma.
  #4 (permalink)  
Antiguo 28/04/2006, 04:20
 
Fecha de Ingreso: agosto-2003
Mensajes: 398
Antigüedad: 20 años, 8 meses
Puntos: 0
Lo que quiero es añadir un MDI Child a un formulario padre a travez de un Hilo para que no me se congele la aplicación.
¿COmo puedo llamar a la propiedad childForms(childForm).MdiParent = Me con el metodo Invoke?
Saludos
PD: Disculpa por lo del titulo, solo es que llevo dias intentando buscar la solución y no conseguia nada de nada.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:58.