Componente VB
Estoy haciendo un componente en vb que consiste en una barra de 10 puntos, como diez option buttons que se puede marcar para dar una puntuación.
Puedes limitar el numero máximo y mínimo, y cuando limitas el máximo desaparecen los botones que no son válidos ;Si limitas el máximo a 8 los dos últimos punto se hacen invisibles y solo se pueden clickear los 8 primeros.
El problema es que cuando cambias el máximo y los puntos se hacen invisibles no se repinta bien el fondo detrás de los puntos y aparecen unos círculos del color del fondo del componente aunque este es transparente.Por ejemplo; el máximo por defecto es 10, si en ejecución lo cambias a 6 aparecen seis puntos clickeables y donde antes estaban los otros 4 aparecen cuatro puntos del color del componente. Si haces click en uno de los puntos visibles, los otros "puntos" que no deberían estar desaparecen y se ve lo que haya debajo. Si pones otro máximo, pasa lo mismo aparecen los puntos que deberían estar en el caso anterior, es decir si el máximo es 10 y pones máximo 8 salen 8 puntos y donde están los invisibles se ve el fondo del componente, si luego pones máximo 6, se ven 6 puntos normales, los puntos 9 y 10 desaparecen totalmente y los puntos 7 y 8 se ven del color de fondo del componente.
Creo que lo que pasa es que cuando se hacen invisibles los puntos el formulario en el que están ya se ha repintado o algo así y hay que forzar un nuevo repintado para que salga bien, si pones dos veces seguidas el mismo máximo a la segunda se ve bien.
Espero haberme explicado bien pero si no te puedo mandar el código del componente para que lo veas.
Gracias de antemano y si necesitas más detalles o aclaraciones dímelo. Se que es un poco confuso, si es necesario te puedo enviar el código y lo ves tu mismo.
Puedes limitar el numero máximo y mínimo, y cuando limitas el máximo desaparecen los botones que no son válidos ;Si limitas el máximo a 8 los dos últimos punto se hacen invisibles y solo se pueden clickear los 8 primeros.
El problema es que cuando cambias el máximo y los puntos se hacen invisibles no se repinta bien el fondo detrás de los puntos y aparecen unos círculos del color del fondo del componente aunque este es transparente.Por ejemplo; el máximo por defecto es 10, si en ejecución lo cambias a 6 aparecen seis puntos clickeables y donde antes estaban los otros 4 aparecen cuatro puntos del color del componente. Si haces click en uno de los puntos visibles, los otros "puntos" que no deberían estar desaparecen y se ve lo que haya debajo. Si pones otro máximo, pasa lo mismo aparecen los puntos que deberían estar en el caso anterior, es decir si el máximo es 10 y pones máximo 8 salen 8 puntos y donde están los invisibles se ve el fondo del componente, si luego pones máximo 6, se ven 6 puntos normales, los puntos 9 y 10 desaparecen totalmente y los puntos 7 y 8 se ven del color de fondo del componente.
Creo que lo que pasa es que cuando se hacen invisibles los puntos el formulario en el que están ya se ha repintado o algo así y hay que forzar un nuevo repintado para que salga bien, si pones dos veces seguidas el mismo máximo a la segunda se ve bien.
Espero haberme explicado bien pero si no te puedo mandar el código del componente para que lo veas.
Gracias de antemano y si necesitas más detalles o aclaraciones dímelo. Se que es un poco confuso, si es necesario te puedo enviar el código y lo ves tu mismo.
Respuesta
1