Einzelnen Beitrag anzeigen

Delbor

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

AW: Privat deklarierte Klasse ableiten

  Alt 20. Nov 2017, 17:17
Hi TBx

Warum in die Ferne schweifen, denn siehe, das Gute ist doch so nah!

So, oder so ähnlich lautet ein bekannnter Satz aus der klassischen Literatur. Für mich und mein Delphi bedeutet das:
  • TPDFPage als TPDFDocumentPage im public-Abschnitt deklariert:
  • Forward-Deklaration von TPDFDocumentPage einführen, da einige Felder des Frames vom Typ dieser Seite sind
  • Einige Methoden des Frames waren plötzlich unauffindbar für den Compiler
  • Meine erste Reaktion: jetzt muss ich das ganze vermaledeite Beispielprogramm umschreiben, d.h. alle unauffindbaren Methoden löschen und neu anlegen(1)

Nuja - die Seite heisst TPDFPage und nicht etwa FTPDFPage - da hätte ich die einfache Lösung vielleicht früher gefunden, die da heisst:
Property anlegen (nachfolgend alle bisherigen durch mich angelegten Propertys):

Delphi-Quellcode:
    property PDFPageList: TList read FPages;
    property TotalSize: TPointsSize read FTotalSize;
    property PDFSeite: TPDFPage read FCurPage;
Und in meiner Mainform heisst es dann bei PDFiumFrame1.MouseUp:

Delphi-Quellcode:
  
  Memo1.Lines.Add('PDFiumFrame1.TotalSize.cx := ' + FloatToStr(PDFiumFrame1.TotalSize.cx));
  Memo1.Lines.Add('PDFiumFrame1.TotalSize.cy := ' + FloatToStr(PDFiumFrame1.TotalSize.cy));
  Memo1.Lines.Add('PDFiumFrame1.PDFSeite.Index := ' + intToStr(PDFiumFrame1.PDFSeite.Index));
Das gibt mir dies aus:
Zitat:
PDFiumFrame1.TotalSize.cx := 612
PDFiumFrame1.TotalSize.cy := 5544
PDFiumFrame1.PDFSeite.Index := 0
Dabei ändert sich nur die Indexangabe - sie gibt exakt den Index der Seite an, die ich angeklickt habe. Totalsize ändert sich nicht und ist also der Size-Wert der PDF im Speicher...

(1) Ob wohl ein neu erzeugen des Projektes gereicht hätte?

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