Delphi beliebte Fehler: TfrxReport -TfrxMasterData

15.12.2016 - Lesezeit: ~1 Minute

In meinem Programm erstelle iche eine TfrxMasterData und trage dazu einige TfrxMemoView ein. Obwohl im Workspace alles richtig angezeigt wurde, waren die TfrxMemoView nicht dem TfrxMasterData zugeordnet,

Falsch

Der Fehler lag darin, dass ich der TfrxMasterData keine Weite zugeodnet hatte. So wurde die TfrxMasterData zwar im Workspace richtig angezeigt, aber die TfrxMemoView konnten einer TfrxMasterData nicht zugeordnet werden.

function TfmEinfacherFastReportDesigner.EinfacheTabelle_Masterdata(
  aPage: TfrxReportPage; var aTop, aHeight: extended): TfrxMasterData;
begin
  Result := TfrxMasterData.Create(aPage);
  Result.CreateUniqueName;
  Result.Left:=0;
  Result.Width := 750; //Width darf nicht 0 sein.
  Result.Top := aTop;
  Result.Height := aHeight;
  Result.DataSet := dsTabelle;
end;

Richtig

Tags: Delphi-Programmierung

Delphi 10 - Icon fehlt

11.12.2015 - Lesezeit: ~1 Minute

Mein Projekt konnte ich (fast) ohne Schwierigkeiten von Delphi 2009 nach Delphi 10 umsetzen. Nur fehlten plötzlich in den Formularen das Icon in der oberen linken Ecke.

Die Fehlersuche war aufwändig aber von Erfolg gekrönt.

In einer RES-Datei einer meiner selbst geschriebenen Komponenten war neben den BITMAPs auch ein verstümmelter Eintrag für ein ICON.

Mit Hilfe des Tools [Resourcehacker](http://www.angusj.com/resourcehacker/ konnte ich die RES-Datei reparieren.)

  • Action - "Save Bitmap-Group to a RES-File"

Tags: Delphi-Programmierung

Delphi beliebte Fehler: Delphi 10 - Debugging funktioniert nicht

14.10.2015 - Lesezeit: ~1 Minute

Das ist aber eine böse Falle für Umsteiger von Delphi 2009 auf Delphi 10 Seattle:

Wenn das Programm in der IDE mit dem grünen Pfeil gestartet wird, sollte man vorher den Hinweis lesen "Ohne Debugger ausführen".

Um das Programm in der IDE mit Debugger zu starten die Taste F9 benutzen oder diesen Schalter

Tags: Delphi-Programmierung

Delphi beliebte Fehler: Grid auf einem Formular erhält nicht den Focus

29.09.2015 - Lesezeit: ~1 Minute

Das Problem:

Ein Eingabedialog wird mit Showmodal aufgerufen und das Grid im Eingabedialog erhält nicht den Fokus und ist auch mit der Maus nicht anklickbar.

Die Lösung

Schuld war der Aufruf des Eingabedialogs im Hauptformular der Anwendung bereits im OnFormActivate Ereignis, ohne der Anwendung Zeit zu geben alle bis dahin anstehenden Ereignisse abzuarbeiten.

procedure Tam_Main.FormActivate(Sender: TObject);
begin
  // Der Anwendung Zeit geben, alle bisher anstehenden Ereignisse abzuarbeiten.
  Application.ProcessMessages;
  am_Eingabe.Execute;
end;
Tags: Delphi-Programmierung


Delphi beliebte Fehler: "Ungültige Zeigeroperation" bei Close eines Forms

30.01.2014 - Lesezeit: ~1 Minute

Beim Schließen eine Formulars, an dem ich schon seit Monaten keine Änderungen vorgenommen hatte, gab es plötzlich eine Schutzrechtsverletzung.

Nach mehreren Stunden Suche habe ich den Fehler gefunden.

Auf dem Formular gibt es eine TpFIBDataSet. Zu dieser TpFIBDataSet hatte ich neben anderen Feldern ein TStringField zugewiesen. (Weiß der Geier warum ich das mal gemacht hatte.) Nach einem Update der FIB-Komponenten auf die Version 7.51.2676 wurde das TStringfield beim Schließen des Formulars nicht mehr mit freigegeben und verursachte den Fehler "Ungültige Zeigeroperation".

Abhilfe: Das Feld löschen und als TFIBStringfield wieder anlegen.

Tags: Delphi-Programmierung