problemas con controles

22/07/2004 - 01:56 por José Mª Toro Bermejo | Informe spam
Tengo una aplicacion en la que quiero poner a enable =false todos los
botones. El codigo que utilizo es :

Dim ctr As Control
Dim btn As Button
For Each ctr In Controls
If TypeOf ctr Is Button Then
btn = CType(ctr, Button)
MessageBox.Show(btn.Text)
End If
Next

el problema es que los botones no se ponen enable=false, ¿alquien sabe que
hago mal?¿Hay otra solucion para hacer lo que quiero conseguir en mi
aplicacion?

GRACIAS DE ANTEMANO

Preguntas similare

Leer las respuestas

#1 Carlos Solivan
22/07/2004 - 04:38 | Informe spam
Usa tus conosimientos de otras cosas al 100 %
Casi siempre uno le pone el nombre del boton
BtnInsertar,BtnBorrar,BtnCancelar
Y los textbox pues txtNum,TxtMiao,txtMichuMichu

Private Sub Enable()
Dim BtnCtr As Control
Dim btn As New Control
Dim Btn2 As String = "btn"
Dim Btn3 As String = ""
For Each BtnCtr In Me.Controls
Btn3 = Microsoft.VisualBasic.Left
(BtnCtr.Name, 3)
If Btn2 = Btn3 Then
BtnCtr.Enabled = False
End If


Next
End Sub
















Miao...



Tengo una aplicacion en la que quiero poner a enable


=false todos los
botones. El codigo que utilizo es :

Dim ctr As Control
Dim btn As Button
For Each ctr In Controls
If TypeOf ctr Is Button Then
btn = CType(ctr, Button)
MessageBox.Show(btn.Text)
End If
Next

el problema es que los botones no se ponen enable=false,


¿alquien sabe que
hago mal?¿Hay otra solucion para hacer lo que quiero


conseguir en mi
aplicacion?

GRACIAS DE ANTEMANO


.

Respuesta Responder a este mensaje
#2 DJ_MIAO
22/07/2004 - 04:43 | Informe spam
Carlos tienes guille de gato??


Usa tus conosimientos de otras cosas al 100 %
Casi siempre uno le pone el nombre del boton
BtnInsertar,BtnBorrar,BtnCancelar
Y los textbox pues txtNum,TxtMiao,txtMichuMichu

Private Sub Enable()
Dim BtnCtr As Control
Dim btn As New Control
Dim Btn2 As String = "btn"
Dim Btn3 As String = ""
For Each BtnCtr In Me.Controls
Btn3 = Microsoft.VisualBasic.Left
(BtnCtr.Name, 3)
If Btn2 = Btn3 Then
BtnCtr.Enabled = False
End If


Next
End Sub
















Miao...



Tengo una aplicacion en la que quiero poner a enable


=false todos los
botones. El codigo que utilizo es :

Dim ctr As Control
Dim btn As Button
For Each ctr In Controls
If TypeOf ctr Is Button Then
btn = CType(ctr, Button)
MessageBox.Show(btn.Text)
End If
Next

el problema es que los botones no se ponen




enable=false,
¿alquien sabe que
hago mal?¿Hay otra solucion para hacer lo que quiero


conseguir en mi
aplicacion?

GRACIAS DE ANTEMANO


.



.

Respuesta Responder a este mensaje
#3 Carlos Solivan
22/07/2004 - 04:44 | Informe spam
Jajaja no. Pense que eras una gata en celo. Mala mia..



Usa tus conosimientos de otras cosas al 100 %
Casi siempre uno le pone el nombre del boton
BtnInsertar,BtnBorrar,BtnCancelar
Y los textbox pues txtNum,TxtMiao,txtMichuMichu

Private Sub Enable()
Dim BtnCtr As Control
Dim btn As New Control
Dim Btn2 As String = "btn"
Dim Btn3 As String = ""
For Each BtnCtr In Me.Controls
Btn3 = Microsoft.VisualBasic.Left
(BtnCtr.Name, 3)
If Btn2 = Btn3 Then
BtnCtr.Enabled = False
End If


Next
End Sub
















Miao...



Tengo una aplicacion en la que quiero poner a enable


=false todos los
botones. El codigo que utilizo es :

Dim ctr As Control
Dim btn As Button
For Each ctr In Controls
If TypeOf ctr Is Button Then
btn = CType(ctr, Button)
MessageBox.Show(btn.Text)
End If
Next

el problema es que los botones no se ponen




enable=false,
¿alquien sabe que
hago mal?¿Hay otra solucion para hacer lo que quiero


conseguir en mi
aplicacion?

GRACIAS DE ANTEMANO


.



.

Respuesta Responder a este mensaje
#4 Carlos Solivan
22/07/2004 - 04:56 | Informe spam
Espero que te funcione el ejemplo que te di
pero quitale el new al Dim btn As New Control
no hace falta .
Tengo una aplicacion en la que quiero poner a enable


=false todos los
botones. El codigo que utilizo es :

Dim ctr As Control
Dim btn As Button
For Each ctr In Controls
If TypeOf ctr Is Button Then
btn = CType(ctr, Button)
MessageBox.Show(btn.Text)
End If
Next

el problema es que los botones no se ponen enable=false,


¿alquien sabe que
hago mal?¿Hay otra solucion para hacer lo que quiero


conseguir en mi
aplicacion?

GRACIAS DE ANTEMANO


.

Respuesta Responder a este mensaje
#5 Tristan
22/07/2004 - 11:19 | Informe spam
Supongo que en tu ejemplo, falta el enabled = false :-)

Descartado eso. Ten en cuenta que en winforms, los
controles funcionan de forma recursiva. Cada control
puede contener controles. Si por ejemplo tienes un botón
dentro de un Panel, o un TabControl, no se accederá a
ellos con ese bucle.

Este código funcionaría sobre los controles situados
directamente en el formulario:

Dim ctrl As Control
For Each ctrl In Me.Controls
If TypeOf ctrl Is Button Then
ctrl.Enabled = False
End If
Next

Para hacer lo mismo con un control contenedor, sustituye
el Me de Me.Controls por el nombre del contenedor.

Si quieres un código que realmente recorra todos los
controles de un formulario, sería así:

ActivaBotones(Me)

Sub ActivaBotones(ByVal parent As Control)
Dim ctrl As Control
For Each ctrl In parent.Controls
If ctrl.Controls.Count > 0 Then
ActivaBotones(ctrl)
End If
If TypeOf ctrl Is Button Then
ctrl.Enabled = False
End If
Next
End Sub
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida