Spanish Problema con cambio slindigpanels

Santiago Russo

Member
Licensed User
Buenas recurro a este foro a ver si me pueden ayudar el problema es el siguiente cree varios paneles en un activity luego en tiempo de ejecucion creo los botones. cuando hago click por primer vez tiene q marcarse de verde cuando hago click en otro, de rojo en el primer panel lo hace bien pero cuando hago click en el boton siguiente todos los demas botones quedan marcados de rojo. adjunto codigo simplificado.
 

Attachments

  • Principal.zip
    11.4 KB · Views: 277

josejad

Expert
Licensed User
Longtime User
Hola:

He probado a mover la línea
B4X:
dr.Initialize2(Colors.White,18,2dip,Colors.RGB(97,74,144))
Dentro del bucle y va, pero al pulsar en un botón cambia el color de 2.

Consejos:
- Si colocas un punto de depuración en una sub (por ejemplo en botones_click), puedes ir ejecutando línea a línea y ver qué pasa, simplemente pulsa donde ves la flechita roja en la imagen, y aparecerá un punto rojo, en el que se parará cuando el código llegue ahí.

upload_2019-10-11_21-23-6.png


- Si repites muchas veces tu código, entonces hay algo que mejorar, es mejor reutilizar el código. Te mando un ejemplo rápido de otra forma de hacer algo similar. Tienes que marcar la librería "XUI Views", ya que he puesto los botones de este tipo, ya que es más fácil gestionar el color de fondo.

saludos,
 

Attachments

  • botones.zip
    9.4 KB · Views: 266

Santiago Russo

Member
Licensed User
Gracias Jose, lamentablemente tengo la version 7.5 de b4a y para instalar la libreria que me dices tengo que tener la version 8.8 en adelante.
Respecto a la depuracion si hize lo que me decis vengo del mundo delphi, vbasic y esas cosas la tengo clara mira me estoy volviendo loco con este tema logre por ejemplo que si en el sub botones hacer algo asi para los demas paneles anda
sub botones_click
dim b as button
b = sender
b.text=b.text
en este caso no cambio de colores y si hago click en siguiente en los demas paneles, los botones se comportan como corresponde.
 

josejad

Expert
Licensed User
Longtime User
Mañana le echo otro ojo.
Bueno, en mi ejemplo puedes cambiar el tipo de los botones a button (en vez de BXVIEW), y cambiar el fondo como tú lo haces, veras que el código es mucho mas sencillo y mas facil de depurar
 

Santiago Russo

Member
Licensed User
Gracias Jose, lamentablemente tengo la version 7.5 de b4a y para instalar la libreria que me dices tengo que tener la version 8.8 en adelante.
Respecto a la depuracion si hize lo que me decis vengo del mundo delphi, vbasic y esas cosas la tengo clara mira me estoy volviendo loco con este tema logre por ejemplo que si en el sub botones hacer algo asi para los demas paneles anda
sub botones_click
dim b as button
b = sender
b.text=b.text
en este caso no cambio de colores y si hago click en siguiente en los demas paneles, los botones se comportan como corresponde.
 

Santiago Russo

Member
Licensed User
(Solucionado) la linea
dr.Initialize2(Colors.White,18,2dip,Colors.RGB(97,74,144))
va dentro del ciclo for j y queda de 10 gracias
 
Top