This project is read-only.

Foxcharts - Evento MouseUp

Topics: General
Mar 25, 2009 at 4:54 AM
Hola, al cursor SALES le agregue otros campos donde guardo por ejemplo el codigo del cliente al cual pertenece la barra, ahora necesito que al hacer doble click en la barra del grafico que le pertenezca al cliente ejecute un formulario donde muestre el detalle de sus ventas. Estuve revisando el evento MouseUp del ejemplo y alli podria escribir el codigo, pero lo que necesito es saber el codigo de cliente al cual pertenece esa barra, los parametros  "tnValue" guarda el valor pero varios clientes pueden tener el mismo valor ,"tcLegend" podria ponerle el codigo del cliente pero se veria feo ver su codigo numerico de 11 digitos, lo que necesito saber es si puedo identificar a que registro de la tabla SALES pertenece la barra asi yo poder recoger los datos adicionales (que son varios) que me permitan hacer el detalle que necesito.
Gracias por su ayuda.

Mar 25, 2009 at 1:40 PM
Hola Styler,

En la ultima version de FoxCharts 1.10.9 tenemos la possibilidade de utilizar una nueva opcion, directamente por el evento "DBLCLICK". Toda vez que el ocorre, 4 propiedades reciben valores que pueden ser utilizados para que ud identifique claramente en qual pieza el ratón se encuentra.

Por favor, hace download de la version más nueva y divirtase con el nuevo ejemplo: "ChartsSample_DblClick.scx".
Vea los codigos que se encuentran en el avento "DblClick" del inmforme de ejemplo.

Saludos

Cesar
Mar 25, 2009 at 3:34 PM
Gracias por la respuesta, me baje la version 1.10.9 y el evento "DblClick" es el evento que necesito, pero probando con el ejemplo y haciendo doble clik , veo que el valor de "lnCoordIndex" no coincide con el numero de registro al cual pertenece, en algunos coincide y en otros no, desearia saber en que orden estan creados o como poder tenerlos de forma de que coindica con el cursor SALES.
Gracias por su ayuda.
Mar 27, 2009 at 1:54 AM
Hola Styler,

Gracias por testar.
Si, es possible saber con precision en qual pieza esta se clicando.
Por favor cambie el codigo que tienes en la muestra "ChartsSample_DblClick.scx" en el evento "DblClick" por este:


LOCAL lnValue, lcLegend, lnCoordIndex, lcObjType, lnRecord, lnColumn
lnValue = This.CurrValue
lcLegend = This.CurrLegend
lnCoordIndex = This.CurrIndex 
lcObjType = This.CurrObjType

*!*	1 X 			The 'X' coordinate where the current shape was drawn 
*!*	2 Y 			The 'X' coordinate where the current shape was drawn 
*!*	3 Width			The width of the current shape in pixels 
*!*	4 Height		The width of the current shape in pixels 
*!*	5 Value 		The value of the current shape 
*!*	6 Legend 		The caption of the associated legend 
*!*	7 Start Angle 	The starting angle for Pie or Doughnut charts 
*!*	8 Sweep Angle 	The sweep angle for Pie or Doughnut charts 
*!*	9 ChartRow 		The the column number for the current shape 
*!*	10 Record # 	The record number - RECNO(), that tells to what row of data the current shape is associated 
*!*	11 Object type 	The object type for the current shape. It's a character string that may be: 
*!*			"Rect" - for bar or point charts,
*!*			"Pie" - for pie or doughnut charts or 
*!*			"Legend" - for legends  

lnRecord = This.aCoord(lnCoordIndex, 10)
lnColumn = This.aCoord(lnCoordIndex, 9)


MESSAGEBOX("Value : " + TRANSFORM(lnValue) + CHR(13) + ;
		"Legend : " + TRANSFORM(lcLegend) + CHR(13) + ;
		"Object type : " + lcObjType + CHR(13) + ;
		"RECNO() : " + TRANSFORM(lnRecord) + CHR(13) + ; 
		"Column : " + TRANSFORM(lnColumn) ; 
		, 64, [Code in the "DblClick" event of FoxCharts])


RETURN

Note que estoy utilizando el valor de la variable lnCoordIndex para obtener mas informaciones, utilizando el array "aCoord"
Arriba estan las opciones que aCoord le proporciona.
Mire mas informaciones en el HELP de FoxCharts !

Espero que le sea util !

Saludos

Cesar








Mar 27, 2009 at 3:21 PM
Muchisimas gracias, el codigo anterior es justo lo que necesitaba. Me baje el ultimo archivo de ayuda (0.46) y efectivamente estaba alli explicado (estaba ultizando el archivo de ayuda 0.20b).

Saludos.
Mar 30, 2009 at 2:21 PM
Hola Styler,

Por favor hace download de la mas recente version de FoxCharts v1.15
Ahora tenemos mas 2 nuevar propiedades:
- CurrRecord
- CurrColumn

Mire novamiente los codigos del ejemplo ChartsSample_DblClick, que fueron atualizados.
No hay mas la necesidad de utilizar el "aCoord"
El HELP tambien fue actualizado !

Saludos

Cesar
Mar 30, 2009 at 5:02 PM
Muchisimas gracias por su excelente trabajo, ya estoy implementando con las nuevas propiedades.
Saludos.
Apr 2, 2009 at 12:50 AM
El detalle al hacer doble click en alguna area esta funcionando perfecto, el unico inconveniente que tengo ahora es que estoy utilizando "Detach slices on click", pero combinado con el DobleClick que tengo hace que a veces cuando quiero el detalle se ejecuta primero el Detach ocasionando un efecto de retraso o a veces no se ejecuta. Nose si habria la manera de que al hacer CLick en "Side Legends" funcione el Detach y ya no en el grafico, asi si hago doble click en el grafico me funcione mi detalle. Si no hubiese manera tendria que desactivar "Detach slices on click" para no tener ese efecto de retraso (con lo cual perderia ese buen efecto de Detach que esta comenzando a gustar a los que ven el programa).
Gracias por su atencion.
Apr 6, 2009 at 2:33 PM
Hola Styler

Ahora tienes 2 propiedads para controlar el "detach"

PieDetachSliceOnCLick
y la nueva

PieDetachSliceOnLEGENDClick

El nombre ya es suficiente para que sepas lo que significa !
Esta disponible a partir de la version 1.15.3

Espero que le ayude !

Saludos

Cesar

Apr 7, 2009 at 3:12 PM
Excelente!. Muchisimas gracias por tu ayuda.
Saludos.