AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi DBChart -> Markierung anzeigen, wenn Maus über Punkt ist
Thema durchsuchen
Ansicht
Themen-Optionen

DBChart -> Markierung anzeigen, wenn Maus über Punkt ist

Ein Thema von HolgerCW · begonnen am 29. Feb 2008 · letzter Beitrag vom 6. Mär 2008
Antwort Antwort
Seite 2 von 2     12   
HolgerCW

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

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

  Alt 4. Mär 2008, 20:29
Hat hier keiner eine Lösung. Was man im Editor des Charts einstellen kann muss man doch auch Code-technisch beeinflussen können ?
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#12

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

  Alt 5. Mär 2008, 09:16
Hallo Holger,

die entsprechende Eigenschaft heißt Visible:

DemoChart.Series[0].Marks.Visible := False; Da sie die Sichtbarkeit generell für alle Markierungstexte steuert, wirst du etwas tricksen müssen.

Freundliche Grüße
  Mit Zitat antworten Zitat
HolgerCW

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

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

  Alt 5. Mär 2008, 10:05
Das ist schon mal fantastisch. Wüsstest Du denn auch wie man jede einzelne Bezeichnung (Mark) einer Serie ein-/ausblenden kann ?

Gruss

Holger
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#14

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

  Alt 5. Mär 2008, 19:09
Wenn du die Quellen zur Chart-Komponente verfügbar hast, dann kannst du da sicherlich etwas richten, aber im Auslieferungszustand kann nur die Sichtbarkeit aller Marks gemeinsam geschaltet werden. Mit Trickserei meinte ich, dass du natürlich die Marks komplett leer lassen kannst und erst beim Chart.OnMouseMove() über Series[index].Marks.Clicked() genau den ValueMarkText[] füllst, der als einziger gezeigt werden soll.

Warum willst du die Anzeige denn nicht über die Hint-Technik machen?
  Mit Zitat antworten Zitat
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
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:07 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz