![]() |
Pointer beim Komponentenprogrammieren
Hallöle alle miteinander und nen schönen 2. Advent erstmal :-D !
Aber jetzt zu meinem Problemchen: Sitze gerade mal wieder an einer Komponente. Die Kompo hat unter anderem folgendes property:
Delphi-Quellcode:
Wenn ich jetzt im weiteren Quelltext der komponente auf die StringGrid zugreifen möchte, muss ich dann FGrid oder Grid benutzen?
private
FGrid: TStringGrid; published property Grid: TStringGrid read FGrid write FGrid; Also z.B.:
Delphi-Quellcode:
Danke schonmal!
if FGrid <> NIL then
FGrid.Cells[X, Y] := 'XY'; //oder if Grid <> NIL then Grid.Cells[X, Y] := 'XY'; |
Re: Pointer beim Komponentenprogrammieren
du musst:
Code:
benutzen
if FGrid <> NIL then
FGrid.Cells[X, Y] := 'XY'; |
Re: Pointer beim Komponentenprogrammieren
es ist egal. du kannst auch "Grid" benutzen da "Grid" auf "fGrid" verweist. Richtiger ist es "fGrid" zu nutzen.
|
Re: Pointer beim Komponentenprogrammieren
Zitat:
"Besser ist es "fGrid zu nutzen" :mrgreen: :warn: aber abgesehen davon: ich hätte spontan gesagt "nimm Grid, weil wenn du schonmal ne property gemacht hast, kannst du die ja auch nutzen"...oder nicht? |
Re: Pointer beim Komponentenprogrammieren
Genaugenommen ist der direkte Zugriff auf die Eigenschaftsdaten falsch:
Zitat:
|
Re: Pointer beim Komponentenprogrammieren
Zitat:
|
Re: Pointer beim Komponentenprogrammieren
Also die letzten 2 Posts versteh ich nicht ganz, speziell das letzte:
Beim Componentenproggen muss man doch als Eigenschaft property X: Integer read FX write FX das dann auf eine privatedeklarierte Variable mit (vorbildlich) F vorangestellt, damit man den Überblick leichter halten kann. Wie soll ich denn sonst eine Grid hinbekommen, die man bei bedarf mit aufs Formular setzt und dann in meiner Komponente auf sie Verlinkt? :gruebel: |
Re: Pointer beim Komponentenprogrammieren
Sauber wäre es dann, wenn du innerhalb der Implementierung der Klasse ihre private-Variable "FGrid" ansprichst, aus allen anderen Klassen heraus aber die Property "Grid". Auch wenn sie in der selben Unit liegen!
Das ist dem OOP-Konzept imho am besten zuträglich. |
Re: Pointer beim Komponentenprogrammieren
Zitat:
Gruß, teebee |
Re: Pointer beim Komponentenprogrammieren
Zitat:
Ich würd trotzdem über die Property gehen. grüße, daniel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:10 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