Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.105 Beiträge
 
Delphi 11 Alexandria
 
#19

Re: Property "Objects" im Stringgrid

  Alt 15. Jan 2005, 00:02
Moin Raik,

meine Aussage bezog sich hierauf:

Zitat von Hansa:
...spricht etwas dagegen, pro Zelle ein Object mit 5 Bool-Werten anzulegen...
wenn es sich ausschliesslich um boolsche Werte handelt, so lassen sich diese ja in fünf Bits darstellen.
Der Pointer den ein TObject darstellt ist 32-Bit gross, kann also sogar 32 derartige Werte enthalten.
Man muss ja nicht zwingend ein Objekt erzeugen, um den Pointer mit einem Wert zu füllen.

Beispiel (ein wenig auf Hansas Postings bezogen)

Delphi-Quellcode:
const
  _iEditable = $00000001; // Zelle ist editierbar
  _iScanned = $00000020; // Zelleninhalt wurde gescannt
  _iColorRed = $00000040; // Zelle soll rot sein
//...

// Den Pointer mit den beiden Bits belegen
sgNr.Objects[ACol, ARow] := TObject(_iEditable or _iScanned);
Jetzt enthält das Objekt der Zelle die zwei boolschen Werte (gesetzt), ohne dass ein Objekt erzeugt wurde.
Im Beispiel ist jetzt für die Zelle hinterlegt, dass sie editierbar ist, und das ihr derzeitiger Wert durch Scannen erzeugt wurde.
Sie soll nicht rot eingefärbt werden.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat