Hola Jose
He tratado de seguirlos pero a mi no me ha dado resultado, algo he de haber
hecho mal. Espero no agotar tu paciencia.
Estoy con la version 4.12 del RMChart, Xailer 2.7.5. y Harbour
Tengo la linea:
:MouseUp = "DameDato"
que me manda al Metodo:
METHOD DameDato( oSender, p1, p2, p3, p4, p5 ) CLASS TGrafica
MsgInfo(oSender)
MsgInfo(p1)
MsgInfo(p2)
MsgInfo(p3)
MsgInfo(p4)
MsgInfo(p5) <--- Este valor me indica que es NIL (es
probable que por eso Parse_RMCInfo(p5) mande 0 siempre)
MsgInfo( Parse_RMCInfo( p5 ) )
RETURN NIL
Esta es la definicion de la funcion Parse_RMCInfo
//---------------------------------------------------------- --------
#pragma BEGINDUMP
#include <windows.h>
#include <xailer.h>
typedef struct {
char algo[52];
int nXPos;
int nYPos;
int nXMove;
int nYMove;
int nRegionIndex;
int nRLeft;
int nRTop;
int nRRight;
int nRBottom;
int nSeriesIndex;
int nDataIndex;
LONG nChartType;
LONG nSLeft;
LONG nSTop;
LONG nSRight;
LONG nSBottom;
LONG nSTop2;
LONG nSBottom2;
LONG nGLeft;
LONG nGTop;
LONG nGRight;
LONG nGBottom;
LONG nGCol;
LONG nGRow;
double nData1;
double nData2;
double nData3;
double nData4;
double nVirtData1;
double nVirtData2;
double nVirtData3;
double nVirtData4;
} RMC_INFO;
//---------------------------------------------------------- ----------------
HB_FUNC( PARSE_RMCINFO )
{
if( HB_ISPOINTER( 1 ) )
{
RMC_INFO * rmc = (RMC_INFO *) hb_parptr( 1 );
hb_retnl( rmc->nXPos );
}
else
hb_retnl( 0 );
}
#pragma ENDDUMP
//---------------------------------------------------------- ----------------
Y el RMChartX.prg esta asi:
#include "Xailer.ch"
#include "RMChartX.ch"
CLASS TRMChartX FROM TOcx
PROPERTY cCLSID INIT "RMChart.RMChartX"
METHOD Free() INLINE ::ocx:Reset(), ::Super:Free()
PUBLISHED:
EVENT MouseDown( @nButton, @nShift, @nx, @ny, @utINFO )
EVENT MouseUp( @nButton, @nShift, @nx, @ny, @utINFO )
EVENT MouseMove( @nButton, @nShift, @nx, @ny, @utINFO )
EVENT DblClick()
EVENT MouseDownA( @nButton, @nShift, @nx, @ny, poInfo )
EVENT MouseUpA( @nButton, @nShift, @nx, @ny, poInfo )
EVENT MouseMoveA( @nButton, @nShift, @nx, @ny, poInfo )
PUBLIC:
ENDCLASS
//---------------------------------------------------------- ----------------
"José Lalín" <
joselalinf@gmail.com> escribió en el mensaje de noticias
news:517f85e4$[email=1@svctag-j7w3v3j....]1@svctag-j7w3v3j....[/email]
Jose,
> lo he estado probando, y por lo que he visto, la estructura no es
> exactamente com habéis puesto. No sé exactamente lo que es, pero hay un
> total de 52 bytes antes del primer miembro (nXPos) que habéis puesto.
Ese era el problema.
> Teniendo eso en cuenta, si cambias esto te funciona:
Confirmado. Probado y funcionando.
Saludos,
José Lalín