Consejos

Una clase para facilitar el manejo de sus subformularios

En el foro se han hecho varias peticiones, consejos o preguntas sobre cómo mostrar un mensaje, un reloj de arena o algunos elementos de la interfaz en primer plano de un formulario mientras se difumina el resto. Puede crear este tipo de interfaz con subformularios y formularios de llamada. El código puede complicarse si trabaja con un formulario de varias páginas.

Para facilitarle el trabajo, Vincent De Lachaux ha preparado una clase para simplificar la gestión de los subformularios mostrados en un formulario multipágina. Se encarga de cargar el subformulario sobre la marcha, controlarlo desde un trabajador y reposicionarlo si se cambia el tamaño del formulario principal. Puede centrarse en sus diálogos sin preocuparse de la mecánica.

Consejos blank

Consejos y trucos para sus aplicaciones 4D – Edición de agosto

Traducido automáticamente de Deepl

por Add Komoncharoensiri, Director de Servicios Técnicos de 4D Inc.

Aquí vamos con otra serie de consejos y trucos.

Como usted sabe, la Base de Conocimiento 4D es una biblioteca de información sobre la tecnología 4D donde se publican activamente consejos técnicos semanales y notas técnicas mensuales. Si se perdió los últimos consejos en la KB, no hay problema; aquí hay una compilación de las últimas semanas.

Esta entrada del blog cubre 16 consejos:

Mensaje de invitado blank

Cuadro de lista de tipo: Búsqueda intuitiva en la lista

Traducido automáticamente de Deepl

por el autor invitado Chris Belanger, un desarrollador 4D de Canadá

El typeahead de las cajas de lista(un método para buscar progresivamente) no es una característica nativa de las cajas de lista. Sin embargo, usted puede implementar fácilmente esta característica con algo de codificación creativa. En esta entrada del blog, demostraré la técnica junto con un ejemplo de base de datos y un documento exhaustivo que explica los detalles paso a paso.

El resultado final se resume en el GIF siguiente, que ilustra dos «búsquedas». Una para E-L-L-I-O-T, y otra (tras una ordenación por columnas) para H-A-N-N-A-H:

Producto
Sin categoría
blank

Al cambiar de tamaño… Al cambiar de tamaño… Al cambiar de tamaño… Al cambiar de tamaño…

Traducido automáticamente de Deepl

¿Se pregunta cómo crear una interfaz de usuario agradable y dinámica? Normalmente, cuando se cambia el tamaño de un formulario, los objetos de formulario cuyas propiedades de tamaño horizontal o vertical están configuradas para moverse o crecer, se redimensionan automáticamente. En algunos casos (por ejemplo, para una gestión más fina de la interfaz de usuario), los desarrolladores optan por gestionar el tamaño y la posición de los objetos del formulario mediante programación. Para ello, comprueban el evento «on resized» que se activa dentro del método del formulario. Pero, ¿qué ocurre cuando el formulario contiene uno o varios subformularios? ¿En muchos niveles? ¡Esta entrada del blog te da las respuestas!

Producto blank

Pasar datos de un lado a otro de los formularios

Traducido automáticamente de Deepl

¿No sería genial poder abrir un formulario y pasarle algunos parámetros para inicializar sus objetos de formulario? ¿Y qué tal si pudieras también recuperar los datos para procesarlos, después de que hayan sido modificados por el usuario? 4D v16 R5 facilita mucho tu codificación al simplificar enormemente las comunicaciones con los formularios.

Hasta ahora, cuando querías mostrar datos (no procedentes de la propia base de datos, sino computados o externos) a múltiples usuarios, tenías dos opciones: o escribir código complejo para manejar la visualización de datos en múltiples procesos, o crear tantos formularios como fuera necesario con un montón de variables globales. Pero sabes que las variables globales no son una forma optimizada de codificar, desde el punto de vista de la memoria.

Así que deshazte de tu código complejo y de las variables globales. Con 4D v16 R5 puedes simplemente vincular un objeto a tu formulario y utilizarlo internamente con el nuevo comandoForm . Sin complicaciones… ¡y poderoso!