AGB  ·  Datenschutz  ·  Impressum  







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

Geerbte Attribute entfernen

Ein Thema von blablab · begonnen am 16. Apr 2009 · letzter Beitrag vom 16. Apr 2009
Antwort Antwort
Seite 1 von 2  1 2      
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#1

Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:11
Hallo!

Ich hab eine kleine Anfängerfrage zum Entwickeln von Komponenten:
Ich erbe von TTreeView. Im Objektinspektor habe ich dann automatisch Attribute wie Align, Anchors usw. wie kann ich diese Attribute wieder entfernen (für den Benutzer unsichtbar machen)? Ùnd wie kann ich solche Attribute wie zb Items readOnly machen?

Grüße
blablab
  Mit Zitat antworten Zitat
Benutzerbild von mschaefer
mschaefer

Registriert seit: 4. Feb 2003
Ort: Hannover
2.032 Beiträge
 
Delphi 12 Athens
 
#2

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:15
Delphi-Quellcode:
type MyTreeView = class(TTreeView)
private
     propterty Align;
published
    . . .
Setzte Sie einfach in den Private-Abschnitt der Klassendeklaration.

Grüße // Martin
Martin Schaefer
Phaeno
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#3

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:16
Entfernen geht nicht, statisch readonly machen auch nicht. Du könntest höchstens den Setter überschreiben (wenn der virtual ist) und dort eine Exception werfen.

Zitat von mschaefer:
Delphi-Quellcode:
type MyTreeView = class(TTreeView)
private
     propterty Align;
published
    . . .
Setzte Sie einfach in den Private-Abschnitt der Klassendeklaration.
Das geht nicht. Man kann eine Property nicht weniger sichtbar machen, ist auch blöd. Einfach auf die Basisklasse casten und schon ist sie wieder da
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#4

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:17
Du mußt von der Basisklasse TCustomTreeView ableiten. Dort sind die Properties noch nicht veröffentlich.
Einmal Published/Public-Properties lassen sich nicht mehr *sicher* verstecken.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:24
Ah, ok, ich glaub ich habs verstanden. Das bedeutet entweder ich akzeptiers dass es die Attribute gibt oder ich muss halt früher ableiten. Und einfach die property als private deklarieren sollte man dann eigentlich nicht machen, oder?
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#6

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:26
Hi!

Ich bin mir nicht ganz sicher, aber zumindest eine Warnung sollte Delphi ausspucken.

Aber vor allem bringt es wie gesagt nix - ich caste dann zur Basisklasse und habs dann doch in der Hand...



Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.078 Beiträge
 
Delphi 12 Athens
 
#7

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:36
Zitat von Bernhard Geyer:
Einmal Published/Public-Properties lassen sich nicht mehr *sicher* verstecken.
jupp, Sichtbarkeiten lassen sich "nur" erhöhen und nicht wieder verringern.

[edit] erhöhen und verringern getauscht
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 17:38
??? müsste es nicht andersrum sein? Also:
Sichtbarkeiten lassen sich "nur" erhöhen und nicht wieder verringern?
  Mit Zitat antworten Zitat
blablab

Registriert seit: 3. Jan 2006
509 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 18:17
Vielen Dank für eure Antworten!

Ich hätte aber noch ne kleine Frage zu Komponenten: Wie kann ich einer Komponente ein Icon geben, das dann in der Komponentenpalette angezeigt wird?
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

Registriert seit: 9. Jul 2003
Ort: Ensdorf
6.723 Beiträge
 
Delphi XE Professional
 
#10

Re: Geerbte Attribute entfernen

  Alt 16. Apr 2009, 18:24
Hi!

Bitte erstelle für deine neue Frage auch einen neuen Thread - sonst geht es hier drunter und drüber!
Danke!


Ciao, Frederic
Frederic Kerber
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 17:51 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