Einzelnen Beitrag anzeigen

Muetze1
(Gast)

n/a Beiträge
 
#2

Re: Übersetzung Class MagneticWindow

  Alt 9. Okt 2006, 14:14
Delphi-Quellcode:
Type
  eMsgWhen = ( MSG_AFTER, MSG_BEFORE, MSG_BEFORE_AND_AFTER );
Dabei wird aber die Wertbelegung anders gehandhabt. Das erste Element hat den Ordinalwert von 0, alle weiteren aufsteigend. Ich denke bei diesem Typ würde ein Set besser passen (vergleichbar mit einer Bitmaske):

Delphi-Quellcode:
Type
  eMsgWhen = Set Of ( MSG_AFTER, MSG_BEFORE );
Dann hast du die Möglichkeit die Typen zu kombinieren:

Beispiel:
Delphi-Quellcode:
Var
  lVar: eMsgWhen;
Begin
  lVar := []; // keins
  lVar := [MSG_AFTER, MSG_BEFORE]; // beide
  lVar := [MSG_AFTER]; // nur einer
End;
Zu dem Hinzufügen und Entfernen kannst du auch die Funktionen Include() und Exclude() nutzen. Abfragen ob ein Element in der Menge ist geschieht mit IN:
Delphi-Quellcode:
  If MSG_AFTER In lVar Then
    ShowMessage('jo, after');
  Mit Zitat antworten Zitat