TChart , kleine Macke bez. Mauscursor gefunden

Rund um die LCL und andere Komponenten
Antworten
Frank Ranis
Beiträge: 201
Registriert: Do 24. Jan 2013, 21:22

TChart , kleine Macke bez. Mauscursor gefunden

Beitrag von Frank Ranis »

Hallo ,

bei der Benutzung des Chart ist mir folgendes aufgefallen.
Zum Verschieben des Graphen klicke ich die rechte Maustaste und es erscheint der Mauscursor als crSize mit Pfeilen in allen Richtungen.
Lasse ich die rechte Maustaste los , wird der Cursor wieder zu crArrow , so weit so gut.

Nun aber:
Habe ich die rechte Maustaste gedrückt und tippe nun auch die linke Maustaste bleibt der Mauscursor crSize für immer stehen (na ja bis zum Programmende halt) .

Gruß

Frank
www.flz-vortex.de

wp_xyz
Beiträge: 4869
Registriert: Fr 8. Apr 2011, 09:01

Re: TChart , kleine Macke bez. Mauscursor gefunden

Beitrag von wp_xyz »

Danke für den Hinweis. Ich hab's in Trunk behoben. Falls du nicht Trunk verwendest, kannst du das Problem leicht selbst korrigieren: Öffne TATool.pas im lazarus/components/tachart Ordner und suche die Prozedur "TChartTool.SetCursor" (so um Zeile 1000). Ersetze das "if ActiveCursor = crDefault then exit" gegen ein "if (ActiveCursor = crDefault) or (ActiveCursor = FChart.Cursor) then exit". Die gesamte Routine sieht dann so aus:

Code: Alles auswählen

procedure TChartTool.SetCursor;
begin
  if (ActiveCursor = crDefault) or (ActiveCursor = FChart.Cursor) then exit;
  FOldCursor := FChart.Cursor;
  FChart.Cursor := ActiveCursor;
end;

Frank Ranis
Beiträge: 201
Registriert: Do 24. Jan 2013, 21:22

Re: TChart , kleine Macke bez. Mauscursor gefunden

Beitrag von Frank Ranis »

Hi,

wow , mal eben so zwischen Frühstück und Mittag erledigt .
Was ein Service.

Gruß

Frank

wp_xyz hat geschrieben:Danke für den Hinweis. Ich hab's in Trunk behoben. Falls du nicht Trunk verwendest, kannst du das Problem leicht selbst korrigieren: Öffne TATool.pas im lazarus/components/tachart Ordner und suche die Prozedur "TChartTool.SetCursor" (so um Zeile 1000). Ersetze das "if ActiveCursor = crDefault then exit" gegen ein "if (ActiveCursor = crDefault) or (ActiveCursor = FChart.Cursor) then exit". Die gesamte Routine sieht dann so aus:

Code: Alles auswählen

procedure TChartTool.SetCursor;
begin
  if (ActiveCursor = crDefault) or (ActiveCursor = FChart.Cursor) then exit;
  FOldCursor := FChart.Cursor;
  FChart.Cursor := ActiveCursor;
end;
www.flz-vortex.de

Frank Ranis
Beiträge: 201
Registriert: Do 24. Jan 2013, 21:22

Re: TChart , kleine Macke bez. Mauscursor gefunden

Beitrag von Frank Ranis »

Noch mal Hi,

hab's gerade eingebaut .

Code: Alles auswählen

 
// neu wegen Cursorproblem 14.6.19
procedure TChartTool.SetCursor;
begin
  if (ActiveCursor = crDefault) or (ActiveCursor = FChart.Cursor) then exit;
  FOldCursor := FChart.Cursor;
  FChart.Cursor := ActiveCursor;
end;
 
// alt
(*
procedure TChartTool.SetCursor;
begin
  if ActiveCursor = crDefault then exit;
  FOldCursor := FChart.Cursor;
  FChart.Cursor := ActiveCursor;
end;
*)
               


dann Werkzeuge , Lazarus neu kompiliert , alles super alles gut .
Ist das gei......
Und dann wird noch gefragt (Ist die Programmierung mit Lazarus Free-Pascal zeitgemäß??) .

Geht das bei den Kollegen von Embarcadero-Delphi oder bei Visual-Studio auch so schnell ??????

Gruß

Frank
www.flz-vortex.de

Antworten