AGB  ·  Datenschutz  ·  Impressum  







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

Vererbung mit TWebModule

Ein Thema von TheSledgeHammer · begonnen am 26. Jan 2022 · letzter Beitrag vom 27. Jan 2022
Antwort Antwort
TheSledgeHammer

Registriert seit: 22. Mai 2019
Ort: Mulfingen
43 Beiträge
 
Delphi 10.3 Rio
 
#1

Vererbung mit TWebModule

  Alt 26. Jan 2022, 16:19
Hallo liebes Forum,

ich habe ein Problem mit der Vererbung von TWebModule-Klassen. Mein Setting ist eigentlich recht simpel: ich habe eine Basisklasse, die direkt von TWebModule erbt, und ich habe (derzeit) zwei Kinder-Klassen, die von meiner Basisklasse erben. Soweit, so gut.

Jetzt möchte ich aber auch den Designer nutzen, damit ich Actions einbauen kann, womit ich ja de facto die Endpunkte meines Webmoduls erzeuge. Für die Basisklasse funktioniert das auch ohne Probleme. Hier kann ich zwischen Code und "GUI" hin und her springen und die GUI wird auch als TWebModule erkannt. Wenn ich das jetzt bei meinen Kinderklassen versuche, hagelt es erstmal Hinweise, dass bspw. die property "Actions" nicht existiert und wenn ich das ignoriere, geht eine GUI auf, die sehr wie eine Form ausschaut. In der DFM-Datei werden dann auch allerhand Properties reingeschrieben, die wiederum sehr nach TForm-Properties ausschauen.

Ich könnte - wenn Bedarf besteht - gern ein Minimalbeispiel posten, aber wie gesagt, an dem Setting ist nix weiter Komplexes dran. Wenn es da einen Workaround gibt, nehm ich den auch gerne. Aber so wie ich das sehe, kann ich diese Actions so nicht definieren und entsprechend dann auch meine Endpunkte nicht erzeugen, sehe ich das richtig?
Tobias
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
702 Beiträge
 
Delphi 12 Athens
 
#2

AW: Vererbung mit TWebModule

  Alt 26. Jan 2022, 16:36
Hallo liebes Forum,

ich habe ein Problem mit der Vererbung von TWebModule-Klassen. Mein Setting ist eigentlich recht simpel: ich habe eine Basisklasse, die direkt von TWebModule erbt, und ich habe (derzeit) zwei Kinder-Klassen, die von meiner Basisklasse erben. Soweit, so gut.
Wie hast Du die abgeleiteten Klassen erzeugt? Designer-Klassen bestehen nicht nur aus einer Kode-Unit sondern auch aus einem DFM-File. Um beides korrekt zu erzeugen muss man "visual form inheritance" verwenden.

File -> New -> Others um den Repository-Dialog zu öffnen, dort links "inheritable items" anklicken, dann rechts die gewünschte Basisklasse und dann OK.

Wenn man den Vorfahr einer existierenden Designerklasse ändern will kann man das im Kode machen, muss danach aber sofort in den Designer wechseln, dort "view as text" im Kontextmenu wählen und im dann angezeigten DFM-File das erste "object" in "inherited" ändern.
Peter Below
  Mit Zitat antworten Zitat
TheSledgeHammer

Registriert seit: 22. Mai 2019
Ort: Mulfingen
43 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: Vererbung mit TWebModule

  Alt 27. Jan 2022, 07:31
Hallo peterbelow,

also das mit dem "in inherited ändern" ist mir total neu! Hab ich in 7 Jahren Delphi noch kein einziges Mal gelesen, gehört, geschweigedenn verwendet. Ich hab das jetzt genau so gemacht: den Identifier "object" geändert zu "inherited". Und jetzt kann ich offenbar alles wieder so machen, wie ich mir das gedacht hatte. Besten Dank für die schnelle Hilfe!

Das mit dem Wizard - also Datei/Neu/Weitere usw. - hab ich auch noch nicht gekannt, aber das ist ja an sich nicht unbedingt notwendig, das geht ja auch "zu Fuß"; man muss halt den Trick mit dem "inherited" kennen

Case closed, vielen Dank nochmal.
Tobias
  Mit Zitat antworten Zitat
BerndS

Registriert seit: 8. Mär 2006
Ort: Jüterbog
491 Beiträge
 
Delphi 12 Athens
 
#4

AW: Vererbung mit TWebModule

  Alt 27. Jan 2022, 08:37
Das ist jetzt nicht böse gemeint aber warum einfach (IDE), wenn es auch umständlich geht.
  Mit Zitat antworten Zitat
Antwort Antwort


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 21:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz