Einzelnen Beitrag anzeigen

Benutzerbild von t2000
t2000

Registriert seit: 15. Dez 2005
Ort: NRW
212 Beiträge
 
Delphi 11 Alexandria
 
#1

FastReport Anfängerfrage

  Alt 7. Sep 2020, 16:29
Ich habe einen frxReport und ein frxUserDataSet.
Im frxUserDataSet.Fields(Stringlist) ist genau ein Eintrag drin: 'QRCode'
frxReport hat eine Seite 8x8cm und dort drin ist nur eine Element: Ein QRCode

Ziel der Sache: Ich bekomme einen String und muss dazu einen QRCode erstellen und den als Bitmap abspeichern
FastReport (Enterprise) habe ich sowieso, daher dachte ich, ich nehme das. Fange aber gerade erst mit FastReport an und habe bisher nicht ein einzigen Bericht damit gemacht

Das VCL Programm hat weiterhin eine frxPreview Komponente auf der Form, die den Code anzeigt.

Ganz simpel:

Delphi-Quellcode:
type
  TfrmMain = class(TForm)
    btnMachen: TButton;
    frxReport: TfrxReport;
    frxPreview: TfrxPreview;
    frxUserDataSet: TfrxUserDataSet;
    procedure btnMachenClick(Sender: TObject);
    procedure frxDataSetGetValue(const VarName: string; var Value: Variant);
  private
  public
    QRCode : String;
  end;

var
  frmMain: TfrmMain;

implementation

{$R *.dfm}


procedure TfrmMain.btnMachenClick(Sender: TObject);
begin
  QRCode := 'Dies ist mein Test-QRCode';
  frxReport.ShowReport;
end;

procedure TfrmMain.frxDataSetGetValue(const VarName: string; var Value: Variant);
begin
  Value := QRCode;
end;
Wenn ich das starte, sehe ich den QRCode im Preview. Ohne separate Form, so wie ich es möchte. Aber das Programm lässt sich nicht mehr beenden. Ich vermute, da ist ein unsichtbares Fenster aktiv.
Weiterhin glaube ich, das mein Vorgehen mal so gar nicht in Ordnung, geschweige denn gut und sinnvoll, ist.

Hat jemand dazu einen Vorschlag?
Also mal eben ganz simpel aus einem String ein QRCode-Bitmap machen und als Datei speichern.

Dank euch.

Gruß Thomas
Thomas
(Wir suchen eine(n) Entwickler(in) mit Ambitionen später ggf. die Softwarefirma zu leiten)
Aktuell nicht mehr. Aber ab vielleicht 2024/2025 wird das wieder sehr interessant!
  Mit Zitat antworten Zitat