AGB  ·  Datenschutz  ·  Impressum  







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

Properties bei Ableitung verschieben

Ein Thema von Getox · begonnen am 6. Mär 2019 · letzter Beitrag vom 8. Mär 2019
Antwort Antwort
Seite 2 von 2     12   
Getox

Registriert seit: 28. Dez 2012
155 Beiträge
 
Delphi XE3 Professional
 
#1

AW: Properties bei Ableitung verschieben

  Alt 8. Mär 2019, 12:28
Ich schreibe einfach einen neuen Post, damit das neue Anliegen nicht übersehen wird, weil es nur ein Edit gewesen wäre:

Ich habe jetzt ein Edit, dass ich von TCustomEdit abgeleitet habe. Dieses soll einfach erstmal nur 2 winzige Änderungen haben und daran scheitert es schon:
- Höhe von 24
- Ctl3D auf False

Ich habe schon vieles Versucht und es hat einfach nie Auswirkungen.

Code:
type
  TTextEdit = class(TCustomEdit)
  private
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
  published
    { Published-Deklarationen }
    property Height default 24;
    property Ctl3D default False;
  end;
Code:
type
  TTextEdit = class(TCustomEdit)
  private
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
  published
    { Published-Deklarationen }
    property Height stored True default 24;
    property Ctl3D stored True default False;
  end;
Code:
type
  TTextEdit = class(TCustomEdit)
  private
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    constructor create(AOwner: TComponent);
  published
    { Published-Deklarationen }
    property Height default 24;
    property Ctl3D default False;
  end;

constructor TTextEdit.create(AOwner: TComponent);
begin
  inherited;
  Height := 24;
  Ctl3D := False;
end;
Code:
type
  TTextEdit = class(TCustomEdit)
  private
    { Private-Deklarationen }
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    constructor create(AOwner: TComponent);
  published
    { Published-Deklarationen }
    property Height stored True default 24;
    property Ctl3D stored True default False;
  end;

constructor TTextEdit.create(AOwner: TComponent);
begin
  inherited;
  Height := 24;
  Ctl3D := False;
end;
Wo liegt mein Fehler oder was übersehe ich?
Ist ein Nilpferd ein Pferd, das nicht vorhanden ist?
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Properties bei Ableitung verschieben

  Alt 8. Mär 2019, 12:46
Der constructor ist virtuell. Du musst Ihn mit override deklarieren.

Eigentlich gibt Dir der Compiler dazu eine Warnung aus:

W1010 Methode 'Create' verbirgt virtuelle Methode vom Basistyp 'TCustomEdit'

Delphi-Quellcode:
 public
    { Public-Deklarationen }
    constructor create(AOwner: TComponent); override;
Fritz Westermann
  Mit Zitat antworten Zitat
Getox

Registriert seit: 28. Dez 2012
155 Beiträge
 
Delphi XE3 Professional
 
#3

AW: Properties bei Ableitung verschieben

  Alt 8. Mär 2019, 13:45
Der constructor ist virtuell. Du musst Ihn mit override deklarieren.

Eigentlich gibt Dir der Compiler dazu eine Warnung aus:

W1010 Methode 'Create' verbirgt virtuelle Methode vom Basistyp 'TCustomEdit'

Delphi-Quellcode:
 public
    { Public-Deklarationen }
    constructor create(AOwner: TComponent); override;
Das hat tatsächlich geklappt. Ctl3D ist nun ausgeschaltet. Die Höhe ist auch nicht mehr 22 sondern 23. Aber ich habe 24 eingestellt. Das ist seltsam. Auch wenn ich das auf 25 setze ist es im Endeffekt auf 23, als sei da eine maximale Höhe gesetzt...

Edit: Klappt jetzt. Danke erstmal
Ist ein Nilpferd ein Pferd, das nicht vorhanden ist?

Geändert von Getox ( 8. Mär 2019 um 13:53 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 11:08 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