Einzelnen Beitrag anzeigen

HolgerCW

Registriert seit: 28. Nov 2006
Ort: Marl
1.207 Beiträge
 
Delphi XE7 Enterprise
 
#15

Re: DBChart -> Markierung anzeigen, wenn Maus über Punkt

  Alt 6. Mär 2008, 12:23
Hi,

danke für die ganzen Hinweise. Ich habe jetzt beides umgesetzt:

Um eine Übersicht zu haben, zeige ich alle Punkte mit Markierung an. Die Markierungen kann man dann mit einer CheckBox ausblenden.

Zusätzlich erscheint, wenn man die Mouse über den Punkt bewegt die Information im Hint !

Habe das so mit dem Hint gelöst:

Delphi-Quellcode:
procedure TForm1.DBChartMouseMove(Sender: TObject;
  Shift: TShiftState; X, Y: Integer);
var
  I: Integer;
  Index: Integer;
begin

 DBChart.ShowHint := FALSE;
 DBChart.Hint := '';
 DBChart.ShowHint := TRUE;

 I := 0;

 For I := 0 To DBChart.SeriesCount - 1 do
 begin

  If DBChart.Series[I].GetCursorValueIndex >= 0 Then
  begin

   Index := DBChart.Series[I].GetCursorValueIndex;
   DBChart.Hint := DBChart.Series[I].ValueMarkText[Index];

  end;

 end;

end;
Mit der Variante brauchte ich nicht diesen HintRefresh beeinflussen. Der einzige Nachteil ist, das man nachdem der Hint erschienen ist, einmal mit der Maus klicken muss damit der Hint verschwindet und der nächste Hint beim überfliegen mit der Maus angeziegt werden kann. Das Refresh mache ich mit ShowHint = False und wieder True.

Vielleicht kann das ja einer noch verfeinern, aber die Lösung gefällt mir schon.

Gruss

Holger
  Mit Zitat antworten Zitat