Konstanten erzeugen

Für allgemeine Fragen zur Programmierung mit PureBasic.
kmais
Beiträge: 45
Registriert: 09.02.2017 13:54

Konstanten erzeugen

Beitrag von kmais »

Wie kann ich eine Konstante erzeugen, die mit Sicherheit außerhalb aller PB-Konstanten liegt? Ich möchte jegliche Überschneidungen vermeiden. #PB_GadgetType_Button hat zum Beispiel den Wert 1. Es gibt immer seltsame Zufälle und irgendwie könnte sich das mal mit einer erzeugten Konstante überschneiden. Ich denke da zum Beispiel an ein selbst erstelltes Gagdet, das dynamisch während des Programmablaufs durch Identifizierung mittels seiner Konstanten erzeugt wird. Das muss sich dann in jedem Fall von allen vorhandenen Konstanten unterscheiden. Und das möchte ich gewährleisten.
Benutzeravatar
Pelagio
Beiträge: 424
Registriert: 11.11.2004 17:52
Computerausstattung: AMD Ryzen 5 7600 6-Core Prozessor 3.80 GHz
16,0 GB Arbeitsspeicher
Windows 11 Pro Betriebssystem
Wohnort: Bremen

Re: Konstanten erzeugen

Beitrag von Pelagio »

Am einfachsten ist es in diesem Falle die Konstanten, die ja schon am Beginn des Programmes bekannt sein sollten, mit Enumeration zu erstellen

Code: Alles auswählen

Enumeration
    #WindowID ; wird 0 sein
    #GadgetID ; wird 1 sein
    #MenuID   ; wird 2 sein
  EndEnumeration
Siehe auch in der Hilfe: Enumerations
HILFE ist immer Gut :allright:
Ohne Zeit kein Fleiß
Auf neustem Stand zu sein ist eine Kunst die nicht jeder perfektioniert [Win11Pro; PB6.20 LTS]. :allright:
Benutzeravatar
#NULL
Beiträge: 2239
Registriert: 20.04.2006 09:50

Re: Konstanten erzeugen

Beitrag von #NULL »

Er meint vermutlich nicht Objekt-Nummern, sondern Konstanten und ihre Werte allgemein.
Halte ich aber für keine gute Idee und lässt sich auch nicht zuverlässig umsetzen. Du solltest den PB-seitigen state und deinen eigen state trennen, also in separaten Variablen bzw. Feldern speichern.

Code: Alles auswählen

\pb_flags = #PB_Checkbox_Checked | ...
\my_flags = #MY_FLAG | ...
my pb stuff..
Bild..jedenfalls war das mal so.
Antworten