Einzelnen Beitrag anzeigen

Delbor

Registriert seit: 8. Okt 2006
Ort: St.Gallen/Schweiz
1.186 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: FloatToStr & Prozeduraufruf mit 2 Parametern

  Alt 3. Dez 2017, 18:22
Hi zusamen

Ich habe folgendes Konstrukt:
Delphi-Quellcode:
  TPdfPoint = record
    X, Y: Double;
    procedure Offset(XOffset, YOffset: Double);
    class function Empty: TPdfPoint; static;
  end;
Gibst dafür eine Lösung?
Offset liefert als procedure ohne Var-Parameter noch nicht mal ein double! Meinst Du vieleicht FCtrl.Document.PageSizes[i].X und FCtrl.Document.PageSizes[i].Y?
Natürlich hast du recht - das habe ich schlicht und einfach vergessen.

Delphi-Quellcode:
 for i := 0 to FCtrl.Document.PageList.Count -1 do
    begin
      Memo1.Lines.Add(Format('X-Offset / Y-Offset := %n / %n',
      FCtrl.Document.PageSizes[i].X, FCtrl.Document.PageSizes[i].Y]));
    end;
Vielen Dank, Delphi.Narium, das beantwortet mir eigentlich die Kernfrage, wie ich zwei Fliegen mit einer Klappe schlage - ähhh zwei Werte gleichzeitig in eine Stringvariable kriege.

Um aber nochmal auf die Antwort von gammatester zurückzukommen:
Zitat:
Meinst Du vieleicht FCtrl.Document.PageSizes[i].X und [DELPHI]FCtrl.Document.PageSizes[i].Y?
Nein, eigentlich nicht, da ich das schon habe. Aber das ist das, was die procedure mit den Offsetwerten macht:
Delphi-Quellcode:
procedure TPdfPoint.Offset(XOffset, YOffset: Double);
begin
  X := X + XOffset;
  Y := Y + YOffset;
end;
Ich werde mir also einen andern Weg suchen müssen, um an die beiden Werte heranzukommen. Schliesslich kann (oder sollte) obige procedure nicht aufgerufen werden, bevor die beiden offsetwerte vernünftig initialisiert sind.
In der Beispielanwendung befindet sich der Aufruf des FileOpenDialogs im FormCreate, und meine hier geposteten Memo1-Anweisungen sind innerhalb des Fileopenblockes angeordnet. Und da sind die beiden Offset-Werte noch nicht initialisiert.

Hintergrund ist: Ich versuche zur Zeit, 2 PDF-Programme zu analysieren: Dieses (SynPdf.zip) und eben das von Andreas Hausladen.
Wobei ersteres schon fast genügen würde - es zeigt ein Dokumente in einem Frame an, wobei zwischen den einzelnen Seiten gescrollt werden kann. Einziges Manko: Ich verwende einen zweiten Frame, der das Dokument verkleinert darstellt, dafür aber mehrere Seiten gleichzeitig. Der sollte sozusagen als Sidebar/Navigationsbar für den grösseren Frame dienen.
Bis jetzt bin ich allerdings daran gescheitert, die beiden Frames, bzw ihre Inhalte, zu synchroniesieren

Gruss
Delbor
Roger
Man muss und kann nicht alles wissen - man muss nur wissen, wo es steht.
Frei nach Albert Einstein
http://roase.ch
  Mit Zitat antworten Zitat