eigene GUI: Fenster-Sort-Algorithmus?

Übersicht BlitzBasic Allgemein

Neue Antwort erstellen

maximilian

Betreff: eigene GUI: Fenster-Sort-Algorithmus?

BeitragSa, Jun 19, 2004 20:23
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi,

ich habe ein Problem mit meiner GUI. Sie benutzt einen Befehl zum zeichnen der ganzen GUI, welche so aussieht:

Code: [AUSKLAPPEN]

Function DrawGUI ()

 DrawWindow

 For Window = Each Window
  DrawForm(Handle(Window))
  DrawLabel(Handle(Window))
  DrawButton(Handle(Window))
  DrawCheckbox(Handle(Window))
  DrawRadiobox(Handle(Window))
  DrawScrollbar(Handle(Window))
 Next

End Function


Hierbei überlappen sich leider die Komponenten. Ich denke, um das zu verhindern, muss ich die Dinger irgendiwe sortieren. Habe aber keine Ahnung wie ich das machen soll.
Wenn mir jemand etwas Pseudo-Code geben könnte, oder einen Tipp währe ich sehr danbar.

Grüße,
LordChaos

Jan_

Ehemaliger Admin

BeitragSo, Jun 20, 2004 13:22
Antworten mit Zitat
Benutzer-Profile anzeigen
suche mal, nach grafiken nach der Y achse zeichnen, da habe ich mal sowas herrein geschrieben!
between angels and insects

maximilian

BeitragSo, Jun 20, 2004 14:01
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Problem liegt leider darin, dass weder an der Y-Achse, noch an der Z-Achse sortiert werden muss. Ich denke dass man irgendwie die Type-Einträge sortieren muss, hab abner keine Ahnung wie.
Trotzdem danke, aber leider nicht das was ich brache.Sad

Grüße,
LordChaos

d-bug

BeitragSo, Jun 20, 2004 16:43
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich glaube nicht, daß das Problem in dieser Funktion zu finden ist. Ich machs bei meiner GUI ähnlich ...

Beschreib den Fehler mal etwas genauer.

Öhm, kann es sein, daß du deine GADGET-Types vorwärts verarbeitest ? Wenn ich so deine Fenster-Update-Funktion sehe, gehst du doch von vorne nach hinten durch die Types, oder ? Also wird bei dir das zuerst erstellte Fenster auch zuerst gezeichnet ?! Machst du das bei deinen Gadgets genaus so ?

Versuchs mal so :

Code: [AUSKLAPPEN]
 gadget.gadgettype = last gadgettype
 while not gadget = null
   Gadget verarbeiten...
   gadget = before gadget
  wend


Sonst wüßte ich jetzt auch nicht, ohne deine restliche GUI-Struktur zu analysieren...

Jan_

Ehemaliger Admin

BeitragMo, Jun 21, 2004 7:24
Antworten mit Zitat
Benutzer-Profile anzeigen
ähm, naja, die brauchen aber ne Z achse!

du machst jedem fenster noch ne Z achse ran!
und das was du anklickst kriegt dann z achse 0
und alle die eine kleinere Zahl, als die aktuelle Z achse hatten, werden um 1 verringert in der Z achse!
between angels and insects

maximilian

BeitragMi, Jun 23, 2004 13:48
Antworten mit Zitat
Benutzer-Profile anzeigen
Hm, habs jetzt hinbekommen. Ich muss alle Komponenten für 1 Fenster zeichen. D.H ich stecke die Functions für alle Kompnenten in die DrawWindow-Funktion.

Trotzdem DANKE!

Grüße,
LordChaos

regaa

BeitragMi, Jun 23, 2004 16:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Z-Achse? Also bei meiner GUI Hab ich es Priorität genannt, wonach sortiert wird.

Wenn du ein Fenster anklickst geht dieses auf Priorität 1 alle anderen werden um 2 vergrößert. Wenn man un auf ein Fenster klickt dann entscheidet die priorität darüber welches ganz oben angezeigt werden soll, denn sonst könnte man ja 3 fenster unter einander haben und alle 3 würden nach ganz oben kommen, oder sonstiges.
UltraMixer Professional 3 - Download
QB,HTML,CSS,JS,PHP,SQL,>>B2D,B3D,BP,BlitzMax,C,C++,Java,C#,VB6 , C#, VB.Net

Jan_

Ehemaliger Admin

BeitragDo, Jun 24, 2004 9:09
Antworten mit Zitat
Benutzer-Profile anzeigen
@ regae ja, ist ja eigentlich das gleiche !
between angels and insects

Neue Antwort erstellen


Übersicht BlitzBasic Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group