AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Problem mit Feld in selbstdefinierter Klasse
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit Feld in selbstdefinierter Klasse

Ein Thema von Nothine · begonnen am 16. Aug 2004 · letzter Beitrag vom 16. Aug 2004
 
Benutzerbild von Nothine
Nothine

Registriert seit: 3. Jul 2004
Ort: Mülheim an der Ruhr
198 Beiträge
 
Delphi 5 Enterprise
 
#1

Problem mit Feld in selbstdefinierter Klasse

  Alt 16. Aug 2004, 02:58
Hi erstmal, bin jetz, obwohl ich schon länger hier lese und auch fast immer gute antworten gefunden hab , auf ein problem gestoßen zu dem ich hier nirgendswo was gefunden hab... (und hab so mal ganz davon abgesehn meinen ersten post hier )

Naja aber zum Problem, ich habe innerhalb einer selbstdefinierten klasse des typs tpanel eine private-deklarierte variable des typs tscrollbox, die wiederum mit weiteren panels gefüllt werden soll, was über den schreibzugriff auf die property PCCount geregelt werden soll
Delphi-Quellcode:
type TPCButtonList = class(TPanel)
  private
    FPCCount: Integer;
    ScrollBox: TScrollBox; // <-- besagtes Feld
    procedure SetPCCount(Count: Word); // <-- prozedur die das füllen regeln soll
  protected
  public
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    procedure SetBounds(ALeft,ATop: Integer); reintroduce;
    property PCCount: Integer read FPCCount write SetPCCount;
  published
  end;
nun funktioniert das auch beim ersten mal soweit ganz gut, im constructor wird die scrollbox initialisiert, ich füll sie beim erstellen mit werten,
Delphi-Quellcode:
  procedure InitializiseForm(Form: TForm);
  begin
    with TPCButtonList.Create(Application) do begin
      Parent := Form;
      Name := 'PCButtonList';
      SetBounds(13,10);
      PCCount := 24; // <-- was hier passiert, 24 is jetz einfach irgendein wert
    end;
und alles is super, aber wenn ich nachträglich PCCount nochmal verändern will, löst quasi schon das angucken der variable ne exception aus, ich kann in der SetPCCount prozedur nicht mal überprüfen ob scrollbox nil ist ohne eine exception auszulösen...

der vollständigkeit halber hier nochmal die Set prozedur:
Delphi-Quellcode:
procedure TPCButtonList.SetPCCount(Count: Word);
var I: Integer;
const Tops: array[0..14] of Byte = (14,0,1,2,3,4,5,6,7,8,9,10,11,12,13);
begin
  if ScrollBox.ComponentCount-1 <> -1 then
    for I := 0 to ScrollBox.ComponentCount-1 do
      ScrollBox.Components[I].Free;
  for I := 1 to Count do begin
    with TPanel.Create(Application) do begin
      Parent := ScrollBox;
      Name := 'Rechner' + IntToStr(I);
      Caption := 'SomeTitle' + ' ' + IntToStr(I);
      SetBounds((Pred(I)div 15)*70,30*Tops[I mod 15],65,22);
    end;
  end;
  FPCCount := Count;
end;
Naja der worte viel die frage natürlich kurz: woran liegt es das ich dieses feld bzw. diese variable nich mehr aufrufen kann?
bin dankbar für jede antwort
  Mit Zitat antworten Zitat
 


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 07:04 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