AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Privat deklarierte Klasse ableiten

Ein Thema von Delbor · begonnen am 17. Nov 2017 · letzter Beitrag vom 20. Nov 2017
 
Delbor

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

Privat deklarierte Klasse ableiten

  Alt 17. Nov 2017, 13:36
Delphi-Version: XE8
Hi zusammen
Dieser Thread ist im Grunde die Fortsetzung von hier. Für einen neuen Thread hab ich mich entschlossen, weil das Thema unabhängig vom verlinkten Thread interessant sein könnte.
Der da besprochene TPDFiumFrame deklariert ein Klasse TPDFPage in einem private-Abschnitt - es gibt, mir unverständlich, weshalb, 2 davon. TPDFiumFrame legt in einer TList-Instanz ein Handle auf eine TPDFPage-Instanz, bzw auf die da repräsentierte PDF-Seite ab, Diese Liste ist public deklariert, kann also von aussen angesprochen werden.

Tja, mein erster Ansatz war nun, in der Mainform, die mehrere Instanzen dieses TPDFiumFrames nutzt, eine neue Instanz der Klasse TPDFPage zu erstellen. Das ging aber gründlich schief, da in der von TPDFiumFrame benutzten Unit TSynPDF auch eine Klasse TPDFPage deklariert ist, die aber von TPDFDictonary abgeleitet ist.

Nun bin ich auf die Idee gekommen, im Public-Abschnitt von TPDFiumFrame eine neue Klasse TPDFDocumentPage zu erstellen und die von der privaten Klasse TPDFiumFrame.TPDFPage abzuleiten. Dabei soll TPDFDocumentPage keine neuen Member einführen.

Die Deklaration wäre auf dies Weise sehr einfach:
Delphi-Quellcode:
type
TPDFDocumentPage = class(TPDFiumFrame.TPDFPage)
  private
  public
end;
TPDFiumFrame.TPDFPage zu schreiben, ist mir jetzt gerade eingefallen - sollte im TPDFiumFrame SynPDF im Uses-Teil aufgeführt sein, könnte es Konflikte geben oder sogtar von einer völlig falschen Klasse abgeleitet werden.

Tja, und jetzt kommt mein eigentliches Problem: Irgendwo hab ich mal mitgekriegt, dass in einer abgeleiteten Komponente/Klasse Member ohne explizite Typangabe aufgeführt werden können, weiss aber nicht mehr, woher ich das habe. Hier, bei Delphi-Treff und in der EntwicklerEcke habe ich dazu nichts gefunden. Auch meine klugen Bücher schweigen sich darüber aus.
Daher wollte ich bei Embarcadero nachsehen, aber wies ausschaut, haben die ihren Server geade heute ins Nirwana geschickt.

Weiss jemand mehr?

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
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:44 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz