![]() |
AW: Redord zu TStringlist hinzufügen
Zitat:
Vielleicht nochmal kurz die Grundlagen nachlesen: ![]() Alle wesentlichen und richtigen Lösungen wurden dir hier schon genannt. Du musst dich nur von alten Denkmustern lösen und einfach übernehmen was DeddyH und jaenicke in den letzten paar Beiträgen gezeigt haben. |
AW: Record zu TStringlist hinzufügen
Zitat:
Wenn man nicht davor sitzt ist alles einfach. ganz kleines Beispiel. (Das ist noch eins der einfachsten Dinge) Dann setz mir das mal um auf der Basis wie hier angegeben. Ohne Array wohlbemerkt.
Delphi-Quellcode:
Wenn man keinen Index mehr hat um die Sprites zu identifizieren ist das nicht mal gerade so dahin geworfen.
if Assigned(Sprite) then
begin if High(Sprite) > ID_MAIN then begin for K := ID_FIRST to High(Sprite) do begin if Sprite[K].h_Bitmap <> 0 then begin DeleteObject(Sprite[K].h_Bitmap); Sprite[K].h_Bitmap := 0; ZeroMemory(@Sprite[K], SizeOf(TSprite)); end; end; end; end; gruss |
AW: Record zu TStringlist hinzufügen
Delphi-Quellcode:
if Assigned(Sprite) then
begin if Sprite.Count - 1 > ID_MAIN then begin for K := ID_FIRST to Sprite.Count - 1 do begin if Sprite[K].h_Bitmap <> 0 then begin DeleteObject(Sprite[K].h_Bitmap); Sprite[K].h_Bitmap := 0; ZeroMemory(@Sprite[K], SizeOf(TSprite)); end; end; end; end; |
AW: Record zu TStringlist hinzufügen
Sprite hat kein Count.
Das habe ich alles schon durch. Dann noch ein anderes nichts machen nur schauen. Wie gesagt das ist nicht mal so eben gemacht. Ich glaube lasse es lieber sein. :) gruss |
AW: Record zu TStringlist hinzufügen
Delphi-Quellcode:
type
TSprite = class CtrlName: WideString; CtrlIndex: Integer; ... end; var Sprite: TObjectList<TSprite>; |
AW: Record zu TStringlist hinzufügen
Zitat:
Siehe Beitrag über den deinen. gruss |
AW: Record zu TStringlist hinzufügen
Wieso nicht? Ich sehe da auf Anhieb nichts in Deinem Code, das unbedingt Records und Arrays brauchen würde.
|
AW: Record zu TStringlist hinzufügen
Zitat:
Delphi-Quellcode:
ersetzt werden muss durch
High(Sprite)
Delphi-Quellcode:
wie im Beispiel und es muss noch das einzelne Sprite (Für die Liste wäre nebenbei Sprites im Plural sinnvoller, dann müsste ich das nicht betonen) erzeugt werden:
Sprite.Count - 1
Delphi-Quellcode:
// statt Setlength(Sprite, Count + 1);
Sprite.Add(TSprite.Create); Sprite[Count].Top := Bottom; ... |
AW: Record zu TStringlist hinzufügen
Zitat:
Found, Count, FlagFound, Prop.RecycleBin ?
Delphi-Quellcode:
Sprite[Count].Top := Bottom;
Das ist ein Array oder? Und das wollte ich nicht! (Dann kann ich es auch so belassen wie es ist) Somit hat sich das erledigt. Danke für eure Teilnahme! gruss |
AW: Record zu TStringlist hinzufügen
Nochmal ganz langsam: wie spricht man ein Array-Element an?
Delphi-Quellcode:
Und ein Listenelement?
Array[Index]
Delphi-Quellcode:
Mal abgesehen von Low() und High() müsste am Zugriff auf die Elemente doch nichts ändern. Sry, ich verstehe Deine Einwände nicht.
List[Index]
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:51 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 by Thomas Breitkreuz