![]() |
Checkboxen zu Zeichen
Hallo alle miteinander... :-D
ich glaube ich bin überarbeitet. :? Ich brauche einen Denkanstoß für eine eigentlich simple Lösung. Ich möchte 4 (später mehr) Checkboxen in zwei Zeichen kodieren. 4 Checkboxen (BIT´s) --> 16 Möglichkeiten --> Zeichen 00..0F Auch wenn mir denken im Moment schwer fällt bitte keinen fertigen Code sondern nur Stichwörter 8) Danke... |
Re: Checkboxen zu Zeichen
Wenn es nur 2 Zeichen sein dürfen, ist das Maximum also $FF (255), daraus ergeben sich 8 Checkboxen.
|
Re: Checkboxen zu Zeichen
Variable zuerst auf 0 setzen dann mittels or mit dem Status einer jeden CheckBox verknüpfen, dabei bei jeder CheckBox das Bit um 1 weiter nach links verschieben (Stichwort shl). Dann mittels IntToHex anzeigen lassen :wink:
|
Re: Checkboxen zu Zeichen
Zitat:
- mir fehlt im Moment die Idee wie ich diese Checkboxen in einen Bitwert z.B. 09 umwandle und dann die 09 in einen String. - Checkbox1 (1.Bit)... Checkbox4 (4.Bit) :gruebel: [edit] Zitat:
Danke für die Richtung... :hi: [edit]fehlende Buchstaben :evil: ...Batterien [/edit] |
Re: Checkboxen zu Zeichen
Hi,
für sowas kennt Delphi Mengen. Die sind standardmäßig so platzsparend wie Möglich, also bei maximal acht Elementen sind sie nur ein Byte groß. Bei bis 16 wären es zwei Bytes.
Delphi-Quellcode:
Mfg
type
TCheckBoxen = set of (cbEins, cdZwei, cbDrei, cbVier); //set = Menge ... var CheckBoxen: TCheckBoxen; ... CheckBoxen := []; //Leere Menge if CheckBox1.Checked then CheckBoxen := CheckBoxen + [cbEins]; //+ Teilmenge hinzufügen, - Teilmenge entfernen ... CheckBox1.Checked := cbEins in CheckBoxen //Vorhandensein prüfen //Falls du den Inhalt als String darstellen willst ShowMessage(IntToHex(Byte(CheckBoxen), 2)); //Wenn du hier einen ungültigen Typecast gemeldet bekommst, ist deine Menge größer (ab 9 Elementen) FAlter |
Re: Checkboxen zu Zeichen
Vielleicht hilft es Dir ja:
![]() |
Re: Checkboxen zu Zeichen
Danke an alle. :thumb:
werde die verschiedenen Varianten mal durchprobieren. ...einen schönen Abend :hi: |
Re: Checkboxen zu Zeichen
Liste der Anhänge anzeigen (Anzahl: 1)
Wenn es dir hilft. Ich habe hier noch ein kleines Codebeispiel gefunden, in dem aus jeweil 2*8 Checkboxen Zahlen gemacht werden. Und diese dann nur mit logischen Operatoren addiert werden. Ist aber weder kommentiert noch aufgeräumt.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:08 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