Ver Mensaje Individual
  #1 (permalink)  
Antiguo 07/02/2011, 03:54
Fernando_net
 
Fecha de Ingreso: marzo-2010
Mensajes: 191
Antigüedad: 14 años, 2 meses
Puntos: 3
Exclamación Problema al pasar el nombre de un form

Hola a todos.

Veréis. Estoy encapsulando código y eliminando codigo redundante.

He creado un modulo que lo llaman 2 forms, ya que este modulo hará cosas que pueden afectar a estos dos forms pero, con un select case, selecciono el form que quiero que afecte.

Imaginad el siguiente ejemplo:

Formulario A (de nombre: guardar)
Formulario B (de nombre: eliminar)

El modulo se llama: escoge_form

Ahora llamo el modulo desde el formulario A y le paso su nombre

Código VB .NET:
Ver original
  1. private sub pasa_formularioA
  2.      'voy al modulo y le paso el nombre del formulario
  3.      escoge_form.escoge_form(1)
  4. end sub

Lo mismo hago con el formulario B

Código VB .NET:
Ver original
  1. private sub pasa_formularioB
  2.      'voy al modulo y le paso el caso que quiero
  3.      escoge_form.escoge_form(2)
  4. end sub

Entonces, el modulo tiene lo siguiente

Código VB .NET:
Ver original
  1. module escoge_form
  2.      public sub escoge_form(byval caso as string)
  3.           'declaramos para tener el nombre del formulario en una variable
  4.           dim formulario as form
  5.  
  6.           'seleccionamos el nombre del formulario dependiendo del caso
  7.           select case formulario
  8.                case 1
  9.                     formulario = formularioA.name
  10.                case 2
  11.                     formulario = formularioB.name
  12.           end select
  13.  
  14.           'una vez con el nombre del formulario, hago un with para que afecte_
  15.           '_a un formulario o otro
  16.           with formulario
  17.                .txt_observaciones = "Perfecto"
  18.           end with
  19.      end sub
  20. end module

Pues claro, en el with falla, porque ".txt_observaciones" me marca error, ya que no forma parte. Cuando en verdad si que forma parte, lo que pasa es que el with no coge el nombre del form...

Tiene alguna solución este problema??

Muchas gracias