AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

DynArray: array of TShape

Ein Thema von Char · begonnen am 21. Okt 2003 · letzter Beitrag vom 22. Okt 2003
 
Char

Registriert seit: 17. Okt 2003
21 Beiträge
 
#4

Re: DynArray: array of TShape

  Alt 21. Okt 2003, 17:06
Ok, danke, das hat diesen Fehler schonmal beseitigt.

Ich habe (versucht) eine Klasse zu schreiben, die in der Lage ist (so ziemlich) beliebig viele TShape-Komponenten zu erzeugen und zu verwalten.

Sie enthält bis jetzt die Methoden
Delphi-Quellcode:
{ public-Teil }
  procedure Move(x,y: integer; whichOne: integer = 0); { <- Position eines einzelnen oder aller Shapes verändern }
  procedure Del(whichOne: integer = 0); { <- Einzelne oder alle Shapes löschen }
  procedure Show(show: boolean = true; whichOne: integer = 0); { <- Einzelne oder alle Shapes anzeigen lassen }
  procedure Resize(width,height: integer; whichOne: integer = 0); { <- Größe eines einzelnen oder aller Shapes verändern }
  constructor Create(howMany,iWidth,iHeight: integer; { <- constructor, dem die "Startwerte" übergeben werden }
                                      BrushStyle: TBrushStyle = bsSolid;
                                      PenStyle: TPenStyle = psSolid;
                                      ParentDing: TWinControl); { <- ???}
  destructor Free; { <- destructor, der erst alle TShapes free't und dann die Klasse ansich }
Die TShapes werden in einem Array gespeichert:

Delphi-Quellcode:
{ private-Teil }
 FShapeArray: array of TShape;
In der Theorie sollte das funktionieren, doch ein paar Fehler sind noch drin.

Welchen Datentyp muss denn ParentDing im Constructor haben?

Der sieht übrigends su aus:

Delphi-Quellcode:
constructor TShapeControl.Create(howMany,iWidth,iHeight: integer;
                   BrushStyle: TBrushStyle = bsSolid;
                   PenStyle: TPenStyle = psSolid;
                   Parent: TWinControl); { <- ??? }
var i: integer;
begin
 SetLength(FShapeArray, howMany);

 for i:=0 to high(FShapeArray) do
    FShapeArray[i] := TShape.Create(self);

    with FShapeArray[i] do
     begin
      parent := ParentDing; { <- ParentDing }
      height := iHeight;
      width := iWidth;
      left := 0;
      top := 0;
      brush.style := BrushStyle;
      pen.style := PenStyle;
     end;
end;
Ich hoffe ihr könnt mir helfen...

  Mit Zitat antworten Zitat
 

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

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 18:24 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