Shordi 27-07-2023, 12:49
El otro día me llamó el Padawan desde mi antiguo trabajo muy mosqueado. Desde la versión 3.18.1 uno de los formularios que llevan más de 10 años funcionando, hacía que la aplicación se colgara y no respondiese a nada y él no sabía por dónde cogerlo.

Una pequeña investigación me enseñó que el culpable era un control que extiende el combobox.
Resulta que han modificado el comportamiento de combobox de manera que al cambiar su texto o su índice, se dispara el evento Click.

Esta mañana yo, en uno de mis programitas "de investigación", me encuentro con que a la hora de "rellenar" un contenedor éste ya está "relleno" y se genera un error.
Una no tan pequeña investigación me revela que la causa es la misma, un combobox que se rellena a partir de un archivo settings, dispara de manera automática el evento click... que rellenaba el contenedor de marras.

En resumen, tened en cuenta ahora que si queréis simplemente rellenar un combobox ( o derivado) y que no se dispare dicho evento (por ejemplo al rellenar un formulario desde una base datos donde uno de los campos se gestiona con un combobox y le asignamos el valor grabado en la BDD pero no queremos que se dispare nada todavía), debéis hacer algo así:

Código:
object.lock(micombobox1)
Micombobox1.index= Mi_valor_de_inicio
object.unlock(micombobox1)

Este comportamiento ya lo tenían otros controles, como checkbox, pero es nuevo para combobox... y no lo he probado con ListBox, que es el más parecido.

Saludos
Shell 26-07-2023, 12:55
Buenas!.

Les muestro dos ejemplos que he realizado. Muestra la onda con desplazamiento horizontal.
Dos versiones. Una con SDL2, usando puntos y usando la clase Paint, trazando con líneas.

Versión con SDL2

[Imagen: LWr2cDz.png]

Adjunto el código fuente:

Y ahora la versión usando Paint con líneas.

[Imagen: rJvqSKv.png]

Saludos
Archivos adjuntos
.gz
OndaSDL2-0.0.1.tar.gz (Tamaño: 12.31 KB Descargas: 2)
.gz
RepresentarMovimientoOscilatorio-0.0.1.tar.gz (Tamaño: 12.63 KB Descargas: 1)
Shell 25-07-2023, 21:58
Buenas!.

He añadido métodos y propiedades que no existen en una clase, pero no es un control, es solo una clase.

El comienzo de la clase extendida es:
- Clase de la que hereda
- Export

Ahora, ¿ cómo puedo hacer uso de esta clase extendida en mis proyectos ?.
Supongo que. Creando un componente. En descripción, el tipo es componente.
Actualmente el proyecto tiene ademas que no lo necesita, una clase más para test y el formulario.
Esto supongo que debo de borrarlo.

Si creo un paquete de instalación, salta crear ejecutable "automáticamente", si le doy a aceptar, lo crea,
cosa que no es necesaria. ( Esto debe ser un bug ). Salto ese paso (cancelar) y comienza con la creación
del paquete de instalación.

Ok, ahora pregunto. Si esto es un componente. ¿ Para que tengo que añadirlo un grupo de paquetes ?.
Si esto es solamente una clase extendida, para que por ejemplo lo voy a añadir al grupo "games" ( por decir uno ).
¿ No debería ser algo fuera de estos menús ?.

Cuando termina de crear el paquete (sin problemas), ¿ no debería ser más adecuado un botón que muestre Aceptar/Finalizar para salir y no uno que muestra Cancelar ?.

También cabe la posibilidad de que esa clase la tenga en un directorio dedicado a "cosas que uso" e importarla al proyecto. Rolleyes
 

Ok se ha instalado, no se muestra nada en menús ( creía que al pertenecer a un tipo de paquetes, esto haría que se mostrase en
el menú ).

Puedo seleccionar el componente. No tiene descripción y tampoco tiene descripción de clases, métodos, etc.
En este caso os muestro las propiedades del proyecto, que creo luego el componente.

[Imagen: lP1lGRQ.png]

¿ Qué es "incluye información de "?
 

Pues sigue fallando.

[Imagen: YecEMog.png]

La clase extendida usa la clase Rect.

En la clase de test añadí manualmente el nombre de la clase extendida, no se muestra al escribirla letra a letra.
Por ejemplo mi clase MiRect hereda de extRect que a esta as su vez hereda de Rect.
En FMain hago uso de la clase MiRect.

Y funciona, pero no como debiese. Tal como salgo del editor, intento volver a cargar el proyecto y se muestra ese error,
el proyecto se abre....y Gambas se ha puesto tonto...congelamiento súbito.

Saludos
Páginas (560):    1 142 143 144 145 146 560   
Bienvenido, Invitado
Tienes que registrarte para poder participar en nuestro foro.
Recordarme?
Miembros: 288
Último miembro: shoUsho
Temas del foro: 1,729
Mensajes del foro: 8,987
Últimos temas
Paren...WAIT !!!
Foro: Aplicaciones/Fragmentos de Código
Último mensaje por: guizans, 25-08-2025, 14:49
Respuestas: 3 - Vistas: 439
GambOS
Foro: General
Último mensaje por: guizans, 20-08-2025, 13:58
Respuestas: 0 - Vistas: 297
Gambas y Wayland
Foro: General
Último mensaje por: guizans, 20-08-2025, 13:56
Respuestas: 6 - Vistas: 576
Odio a gb.Report
Foro: General
Último mensaje por: guizans, 19-08-2025, 10:40
Respuestas: 8 - Vistas: 933
Powered By MyBB, © 2002-2025 MyBB Group.
Made with by Curves UI.