Control indomito

10/03/2006 - 08:50 por Desastres | Informe spam
Buenos días.



Tengo un problema viejo con los controles de un formulario que no he aprendido a controlar.



Cuando hay algún error que puedo controlar, utilizo otro formulario portador de un textbox como
formulario informador para informar al usuario( es decir a mi), luego pongo la propiedad Cancel True y para que no se escape del control del primer formulario, del formulario informador.

Y no se escapa. Lo sé porque cada vez que intento salir del formulario de trabajo, el formulario
informador me comunica el error que se produce antes del Cancel=True .



(Pero en realidad ha salido del control porque se ha ejecutado el formulario informador, se ha
llenado el textbox del formulario informador y se ha descargado[a veces] el otro formulario
informador)



El problema es que no se ha descargado o al menos no se ha quitado de la pantalla ( en segundo
plano).

Lo cierto es que estando dentro (teóricamente del control con el error) del formulario de trabajo si
tecleo cualquier cosa no se ve reflejado en el Control. Para conseguirlo tengo que Clicar primero en
él.

¿Puede alguien decirme en que he metido la pata hasta el corbejo?



Saludos cordiales,

Des
 

Leer las respuestas

#1 Héctor Miguel
10/03/2006 - 09:39 | Informe spam
hola, Des !

... problema viejo con los controles de un formulario que no he aprendido a controlar.
Cuando hay algun error que puedo controlar, utilizo otro formulario portador de un textbox como... informador
... luego pongo la propiedad Cancel = True y para que no se escape del control del primer formulario, del... informador.
... cada vez que intento salir del formulario de trabajo el ... informador me comunica el error... antes del Cancel=True
(Pero en realidad ha salido del control porque se ha ejecutado el formulario informador
se ha llenado el textbox del formulario informador y se ha descargado [a veces] el otro formulario informador)
El problema es que no se ha descargado o al menos no se ha quitado de la pantalla (en segundo plano).
Lo cierto es que estando dentro (teoricamente del control con el error) del formulario de trabajo
si tecleo cualquier cosa no se ve reflejado en el Control. Para conseguirlo tengo que Clicar primero en el.
... en que he metido la pata hasta el corbejo?



sin 'ver' los codigos y los eventos que estas manejando en los controles de ambos formularios ???
[probablemente] algun codigo en los eventos '_exit' o procedimientos 'auxiliares' de verificacion -?-
teoricamente... al mostrar un subformulario, al cerrar el segundo y regresar al primero... regresas al mismo control donde estabas ;)
a menos que... ???
por que no expones los codigos que estas usando [y los criterios que esperas que 'entiendan' los controles] :))

saludos,
hector.

el siguiente ejemplo usa dos formularios:
formulario 1: dos controles textbox y un control commandbutton
formulario 2: un control textbox y un control commandbutton

en el modulo de codigo del formulario 1 ==Private Sub CommandButton1_Click()
Unload Me
End Sub
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1 = "" Then
UserForm2.TextBox1 = "Error en el TextBox1"
UserForm2.Show
Cancel = True
End If
End Sub
Private Sub TextBox2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox2 = "" Then
UserForm2.TextBox1 = "Error en el TextBox2"
UserForm2.Show
Cancel = True
End If
End Sub

en el modulo de codigo del formulario 2 ==Private Sub CommandButton1_Click()
Unload Me
End Sub

Preguntas similares