AGB  ·  Datenschutz  ·  Impressum  







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

Frage zu Properties bei eigener Komponente

Ein Thema von fkerber · begonnen am 26. Jul 2004 · letzter Beitrag vom 27. Jul 2004
Antwort Antwort
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

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

Frage zu Properties bei eigener Komponente

  Alt 26. Jul 2004, 11:32
Hi!

Ich habe eine von Stringgrid eine Komponte abgeleitet und eine neue Property eingeführt.
Das funktioniert auch.
Allerdings will ich diese Property jetzt nicht so wie z.B. Name oder align stehen haben, sondern sie soll der Property Options untergeordnet werden.
Ich hoffe es ist klar, wie ich das meine

Nur, wie soll ich das machen?


Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Frage zu Properties bei eigener Komponente

  Alt 26. Jul 2004, 11:41
Options ist dann sicherlich vom Typ "Klasse" oder "Set". Bei ersterem kannst du von dem Typ von dem Options ist ableiten, und deine Property hinzufügen, und in deiner eigentlichen Klasse die Property überschreiben und von deinem neuen Typ machen.

...ich hoffe das war einigermaßen verständlich
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

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

Re: Frage zu Properties bei eigener Komponente

  Alt 26. Jul 2004, 11:48
Hi!

Hört sich theoretisch super an
Nur weiß ich nicht, wei ich das praktisch umsetzen kann, sry

Kannst du mir einen Tipp oder ein Beispiel geben?


Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Frage zu Properties bei eigener Komponente

  Alt 26. Jul 2004, 12:06
Naja zum Beispiel bei einem Edit gibt es die Property "Font". Diese ist vom Typ "TFont", welcher wiederum eigene Properties hat. letztere sind die, die im OI aufgeklappt werden können.

"Options" beim TStringGrid ist vom Typ "TGridOptions" und der so deklariert:
Delphi-Quellcode:
type
  TGridOption = (goFixedVertLine, goFixedHorzLine, goVertLine, goHorzLine, goRangeSelect, goDrawFocusSelected, goRowSizing,
    goColSizing, goRowMoving, goColMoving, goEditing, goTabs, goRowSelect, goAlwaysShowEditor, goThumbTracking);

  TGridOptions = set of TGridOption;
Tja, und das ist jetzt der 2. Fall: Ein Set. Einzige Änderung die du da vornehmen könntest wäre eine weitere Option hinzuzufügen, indem du TGridOption, TGridOptions und TStringGrid.Options neu definierst, aber tunlichst nur zusätzliche Options dran hängst.

Du könntest aber auch nur TStringGrid.Options neu definieren, und da rein schreiben was du willst. Dann musst du nur zusehen, dass die "alte", dann nach aussen nicht mehr sichtbare Property sinnvoll versorgt ist, da sonst die Elternklassen Probleme bekommen dürften, so man das überhaupt so machen kann. Ich hab's noch nicht selber gemacht, von daher keine Gewähr
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5

Re: Frage zu Properties bei eigener Komponente

  Alt 26. Jul 2004, 12:07
Zitat von dizzy:
...ich hoffe das war einigermaßen verständlich
So halbwegs. Ich hoffe, er meint das folgende : du sollst die Options überschreiben, also neu machen, mit deiner Zusautzoption mit drin.

Jetzt habe ich mir mal den Source vom Grid angesehen (wollte da noch was anderes wissen). Was die Options betrifft : Daran würde ich auf keinen Fall etwas ändern !!

Das zieht sich nämlich durch die ganze Unit. Überall wirken die sich aus. Und das bei fast 6000 Zeilen nur für StringGrid.

Daran rumzuschrauben, tja das wäre nicht nur eine Operation am offenen Herzen, sondern eher eine Herztransplantation.

Geht es um die Erweiterung der Properties um eine eigene, da spricht allerdings überhaupt nichts dagegen. Sofern man die 20-50 ?? Stellen in der VCL nicht überschreibt, die etwas mit "Options" zu tun haben. Also besser : Finger weg ! brrr *grusel*
Gruß
Hansa
  Mit Zitat antworten Zitat
Benutzerbild von mirage228
mirage228

Registriert seit: 23. Mär 2003
Ort: Münster
3.750 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Frage zu Properties bei eigener Komponente

  Alt 26. Jul 2004, 12:15
Hi,

wenn es um zusätzliche Optionen geht, könntest du ja eine Eigenschaft OptionsEx einführen, ähnlich den ItemsEx bei de ComboBoxEx

mfG
mirage228
David F.

May the source be with you, stranger.
PHP Inspection Unit (Delphi-Unit zum Analysieren von PHP Code)
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

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

Re: Frage zu Properties bei eigener Komponente

  Alt 27. Jul 2004, 00:25
Hi!

Habe es über OptionsEx gemacht. Trotzdem danke für eure Tipps.

Ciao fkerber
Frederic Kerber
  Mit Zitat antworten Zitat
Benutzerbild von dizzy
dizzy

Registriert seit: 26. Nov 2003
Ort: Lünen
1.932 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Frage zu Properties bei eigener Komponente

  Alt 27. Jul 2004, 01:53
Ist auch sicherlich die einfachere und empfehlenswertere Variante. Ich nahm nur erst an, dass du unbedingt die Options ändern wolltest
Fabian K.
INSERT INTO HandVonFreundin SELECT * FROM Himmel
  Mit Zitat antworten Zitat
Benutzerbild von fkerber
fkerber
(CodeLib-Manager)

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

Re: Frage zu Properties bei eigener Komponente

  Alt 27. Jul 2004, 01:55
Hi!

Wollte ich auch, weil es mir an sich eleganter vorkam, zumal ich nur eine OptionEx habe.
Aber ich habe es nicht hinbekommen


Ciao fkerber
Frederic Kerber
  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 17:23 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