Seite 8 von 8

Verfasst: 10.07.2006 16:23
von #NULL
PMV hat geschrieben:Da würde ich ... Arrays benutzten und eine kleine Schleife. Dort kann ich
Hunderte von Gadgets erstellen und das in nur 5 Zeilen :shock:
Mit Sicherheitsabfragen eventuell die ein oder andere Zeile noch
zusätzlich.

^^Mach das mal mit Konstanten

Code: Alles auswählen

Enumeration
  #Win
  
  #T_a
  #T_b
  #T_c
  #T_d
EndEnumeration

hWin=OpenWindow(#Win, 50,50,225,400, "")
CreateGadgetList(hWin)
  For i=#T_a To #T_d
    TextGadget(i, 80,i*40, 80,20,"### "+Str(i)+" ###")
  Next

Repeat
  event=WindowEvent()
  Select event
    Case #PB_Event_CloseWindow
      quit=1
  EndSelect
Until quit

Verfasst: 10.07.2006 16:51
von Graffiti
Die Gadgets erstellen ist ja auch kein Problem, die wichtigsten sind in Konstanten mit Enumeration erstellt, die immer wiederkehrenden in einer for-to-next Schleife wie Ihr schon vorgeschlagen habt

das Problem ist tatsächlich das ich über die 10000 komme, bis 576 Kanäle kein Problem, dann fehlen diverse Gadgets weil ich die 10000er Marke anscheinend überschreite.

ich glaube da kann ich nur Projekte splitten oder mir doch noch was anderes einfallen lassen

Verfasst: 10.07.2006 16:59
von MVXA
z.b. PB_Any Nutzen und die Handles dann in einer Array speichern ;).

Verfasst: 10.07.2006 18:48
von PMV
@Zaphod
Hm, kann sein das ich das schon mal irgned wann im Forum gelesen hab.
Zumindest würde das erklären, warum ich persönlich feste Nummern bei
Objekten hasse :lol: ... #PB_Any ist seit einführung bei mir Pflicht, außer
bei schnell geschriebenen Codes die ich hier Poste :roll: .

@#Null
[...]Hunderte[...]
wo sind das "Hunderte"? :?
Und du hast die Ereignisverfolgung vergessen wie sie bei StringGadgets,
ButtonGadgets usw. vorkommt. Frag mal mit Konstanten Hunderte ab.

Bei deinem Beispiel sind zudem Konstanten in der Menge überflüssig.
Dann macht man sich lieber eine Konstate, welche die Menge der
Gadgets speichert und setzt diese dann in die For-Next-Schleife.

Konstanten für jedes Gadgets sind nur dann Sinnvoll (Enumeration),
wenn jede Konstante auch einen aussagekräftigen Namen haben.

@Graffiti
Ach ja, bei Arrays kann man auch Konstanten verwenden. Für die
jenigen, die sich von Konstanten nicht losreißen können :lol: . Den Wert,
der bei #PB_Any zurück gegeben wird in das Array schreiben und das
Array mit einer Konstanten aufrufen:

Code: Alles auswählen

  GadgetArray(#Gadget_Button) = ButtonGadget(...)
Da gibs auch keine 10.000 Probleme :wink: und die Konstanten bleiben
erhalten :shock:

MFG PMV

Verfasst: 10.07.2006 20:11
von edel
#NULL hat geschrieben:
PMV hat geschrieben:Da würde ich ... Arrays benutzten und eine kleine Schleife. Dort kann ich
Hunderte von Gadgets erstellen und das in nur 5 Zeilen :shock:
Mit Sicherheitsabfragen eventuell die ein oder andere Zeile noch
zusätzlich.

^^Mach das mal mit Konstanten

Code: Alles auswählen

Enumeration
  #Win
  
  #T_a
  #T_b
  #T_c
  #T_d
EndEnumeration

hWin=OpenWindow(#Win, 50,50,225,400, "")
CreateGadgetList(hWin)
  For i=#T_a To #T_d
    TextGadget(i, 80,i*40, 80,20,"### "+Str(i)+" ###")
  Next

Repeat
  event=WindowEvent()
  Select event
    Case #PB_Event_CloseWindow
      quit=1
  EndSelect
Until quit
Solange es solche Schnipsel sind ist es ja okay, aber bei etwas
groesserem halte ich das fuer keine gute Loesung. Auch durch
ein Array laufen halte ich nicht fuer Optimal.

Schaut euch ts-soft Post an. Dort werden Konstanten getrennt gehalten
und man kann es leicht lesen. Dazu noch ein SetGadgetdata, falls die
Werte fuer Kanaele gebraucht werden und fertig.

Verfasst: 10.07.2006 20:19
von #NULL
das war nur auf besagtes zitat bezogen.
das thema is für mich eh nicht wirklich so aktuell.
bin nich so ein gui experte.