Z-Order GUI Problem
Übersicht

MacintoshBetreff: Z-Order GUI Problem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hi.
Ich Programmiere mir grade mein eigene GUI-modul. Nur habe ich ein Problem mit der Z-Order, der Fenster, bzw. allen Views. Meine Fenster habe eine methode toFront(), i der sie auch der "child - liste" des parent-vies heraus genommen werden, und dann als letztes view wieder eingefügt werden. Dadurch werden sie als letztes gezeichnet und sind auch ganz oben. die Methode wird bei einem klich auf das fenster aufgerufen. Das Problem: Befinden sich mehrere Fenster übereinander, so stürzt das programm ab, weil dich alle fenster in den vordergrund bringen wollen. Flushe ich meine mouseHit - variable, nachdem ein fenster angeklickt wurde, klappt es eig, nur das sich die fenster dann "abwechseln", denn das hinterste fenster bekommt ja das "event" der maus zu erst. ich müsste die liste(n) jedes view's also umkehren, und das bei jedem update der GUI, was natürlich sau langsam wird. Gibt es da irgend eine gute idee? Bzw. wie löst ihr das? Hoffe man kann verstehen um was es geht. Danke :) |
||
![]() |
Thunder |
![]() Antworten mit Zitat ![]() |
---|---|---|
Ich gehe die Liste immer einmal richtig rum und einmal in die andere Richtung durch (ohne Umdrehen) - das eine Mal zeichnend, das andere Mal updatend. Hier ist der "Hack", den ich meistens dazu verwende (etwas unschön):
BlitzMax: [AUSKLAPPEN] Local w:TLink Sollte so funktionieren, ist jetzt nur aus dem Kopf aufgeschrieben. mfg Thunder Edit: Die While-Schleife ist sicher eine gute Idee ![]() |
||
Meine Sachen: https://bitbucket.org/chtisgit https://github.com/chtisgit |
- Zuletzt bearbeitet von Thunder am Mi, Dez 29, 2010 2:29, insgesamt einmal bearbeitet
![]() |
mpmxyz |
![]() Antworten mit Zitat ![]() |
---|---|---|
Um kein Problem bei leeren Listen zu haben, würde ich eher eine While-Schleife benutzen:
BlitzMax: [AUSKLAPPEN] Local windowLink:TLink Ansonsten wäre dies eine gute Lösung. mfG mpmxyz |
||
Moin Moin!
Projekte: DBPC CodeCruncher Mandelbrot-Renderer |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group