A ver si me puedo explicar un poco mejor... Tengo un TChart, al pasar el cursor por arriba de una serie pretendo mostrar una ventana con datos (Label de la serie, valor, alguna imagen, configurarle transparencia, etc). Esta ventana quiero que siga la posicion del mouse a medida que lo muevo, entonces hago lo siguiente en el OnMouseMove del chart:
Código Delphi
[-]
GetCursorPos(P);
SPIndex:= PieChartSeries.GetCursorValueIndex;
if (SPIndex > -1) then
begin
if (SPIndex <> PieChartSeries.Tag) then
begin
PieChartSeries.Tag:= SPIndex;
SPName:= PieChartSeries.XLabel[SPIndex];
HintForm.Hide;
HintForm.SetHeader(SPName);
end;
end;
HintForm.Left:= P.X;
HintForm.Top:= P.Y;
HintForm.Show
end
else
HintForm.Hide
Esto funciona bastante bien, el problema es que HintForm.Show desactiva el Form principal y HintForm.Hide, lo vuelve activar, lo cual produce un efecto que no me gusta (sobre todo si es un grafico de Barras ya que SPIndex:= BarChartSeries.GetCursorValueIndex casi siempre da < 0)
Eso es todo, espero que se entienda
