Desarrollo & Trucos 06 de Diciembre del 2006 08:46 am
Permitiendo al usuario rediseñar la interfaz de nuestra aplicación
¿Cuantas veces hemos deseado poder mover un poquito un control hacia algún lado, redimensionar un grid, o un botón cuando hemos viajado con el cliente y hemos llevado un exe, y la siguiente entrega que haremos, nada más será para hacer un cambio estetico menor?
Algunas veces nos pasa que el cliente nos pide que le pasemos x texto hacia arriba o que pongamos la etiqueta en la que mostramos alguna información abajo en lugar de estar arriba, es decir cambios menores en la interfaz.
Para esos problemas de amor y de cambios de interfaz inesperados llega iDesigner
Para obtener el resultado como en este video (requiere el codec DivX) solo debe arrastrar una instancia de la clase _design_gral al formulario y en algún botón, método, evento o donde prefiera
colocar el siguiente código:
thisform._design_gral.agregar_mod()
Donde _Design_Gral es el nombre de la instancia de la clase que agregó a su formulario.
La clase cuenta con algunas propiedades que deberá establecer:
- cConfiguracion: Archivo en el que se almacenan las propiedades que establezca de cada objeto/formulario (puede grabar la información de varios formularios y sus objetos en la misma tabla, o puede usar uno por formulario).
- cExluir: Listado de las clases base que no deseamos agregar el comportamiento de la clase, el valor predeterminado es “Timer”, “Line”, “Shape”, en la forma de ejemplo, esta configurada a “Timer”, “Line”, por lo que el Shape si permite ajustar el tamaño y posición.
- lMostrarPosicion: Cuando se establece a .T. muestra una ventana con información sobre el ultimo objeto que se ajusto en tamaño/posición como Alto, Ancho, Posición X y Y, permitiendo escribir un valor para cada uno de estos, para una presición mayor en cuanto al ajuste.
- lRecordarForm: Cuando se establece a .T. cada vez que se ejecute el formulario, recuerda la posición y tamaño del mismo.
- nEspacio: Indical el espacio que ocuparan los indicadores de ajuste en pixeles, un valor grande puede ayudar a encontrar el ajustador, pero puede quedar debajo de otro control, si esta muy cerca del mismo, un valor pequeño puede dificultar usar el control, se recomienda que se use entre un rango de 8 y 15.
Al Llamar al Método agregar_mod() de la clase, se muestra un mensaje como este:

Puede modificar la clase frm_aviso para cambiar el mensaje, puede que quiera poner instrucciones sobre el uso de los controles o algún texto en especial.
Cuando la propiedad lMostrarPosicion se establece a .T. al llamar al método agregar_mod(), la clase despliega una ventana donde puede editar la posición y el tamaño del objeto:

Para descargar la clase, clic acá http://fox.desdeguate.com/descargas/vfp/iDesigner.zip y el video de ejemplo para ver la clase trabajando acá.
Para los que no quieran/tengan DivX :
Bueno, eso es todo, hasta la próxima y espero les sirva ![]()
on 23 Dic 2006 at 8:45 1.Foxbey
dijo …
Bueno amigo veo que el problema esque nadie comenta
ese problema tenia yo. lo que hice es dejar la charla abierta con los usuarios. es decir comenzar la charala y alli los demas dan su opinion. pero si ven vacio los comentarios. no le dan importancia.
de mi parte de digo que esta buena( solo que no pude abrir el video que tienes disponible para descarga) y si no es molestia si tienes el codigo fuente( para trabajar en algunos proyectos en el
gracias amigo y cuenta con el staff del foxbey
pàra lo que desees
Saludos desde Honduras papá
on 24 Dic 2006 at 10:35 2.Jorge Mota
dijo …
El código fuente siempre lo posteo
donde pone:
Para descargar la clase, clic acá y el video de ejemplo para ver la clase trabajando acá.
el “Acá” es el link hacia
http://fox.desdeguate.com/descargas/vfp/iDesigner.zip
y pos sí, lo único es que me esperaba más comentarios de la comunidad foxera, hay tantos, pero casi nadie habla XD
Saludos
on 28 Dic 2006 at 8:46 3.Foxbey
dijo …
Gracias amigo
oye agregame a tu msn
para que me des tus datos y saber si quieres formar
parte del staff del FBI
Att:
Foxbey
on 09 May 2008 at 9:02 4.Gonzalo Cueto Navarro
dijo …
Interesantisimo. Voy a checarlo en detalle.
muchas gracias