tutorials.de Buch-Aktion 05/2012
Like Tree1Danke
  • 1 Beitrag von tombe
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
752
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Hallo Leute,
    ich habe folgendes Problem: User macht ändert auf Formular A einen Wert, dies führt dazu das Formular B, welches im Hintergrund offen ist, von uns aktualisiert wird. Wenn dies geschieht, wird natürlich Formular B in den Vordergrund gestellt und Formular A geht in den Hintergrund.
    Dies ist soweit falsch.
    Da wir x Formulare offen haben, wäre die einfachste Möglichkeit, vor dem Aufruf der Aktualisier-Funktion alle Formulare mit deren Ebene zu speichern und danach diese wieder zu laden.

    Ich habe leider noch gar keine Antwort zu dem Thema, ja nicht mal einen Ansatz gefunden.

    Hat jemand hier schon Erfahrungen gemacht? Suche ich eventuell nach den falschen Stichworten?
     

  2. #2
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Womit arbeitest du/ihr und was bedeutet "...welches im Hintergrund offen ist, von uns aktualisiert wird..."?

    Reicht es nicht aus wenn Formular B mit "HIDE" wieder ausgeblendet wird?
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  3. #3
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Die Fenster sind immer offen und angezeigt, meist auch maximiert.
    Davon gehen wir immer aus, es geht da rein um die Ebene, in der sie sind. Die oberste Ebene hat das fokussierte Fenster.
    Nun geschieht folgendes: Der User macht eine Aktion am fokussierten Fenster. Diese Aktion löst aus, dass das darunter liegende Fenster aktualisiert wird. Durch diese Aktualisierung hat dann dieses Fenster den Fokus, es legt sich also über das erste. Das ist natürlich unschön, denn so muss der User das erste Fenster wieder nach vorne klicken, bevor er weiter machen kann. In diesem Fall kann ich natürlich einfach Fenster A wieder nach vorne holen, aber es geht eben auch komplexer:
    Fenster A Fokus
    Fenster B zweite Ebene
    Fenster C dritte Ebene

    Fenster A Aktion aktualisiert Fenster C. Reihenfolge danach:
    Fenster C
    Fenster A
    Fenster B

    Wenn ich Fenster A einfach wieder nach vorne stelle, ist die Reihenfolge danach ja:
    Fenster A
    Fenster C
    Fenster B

    ideal wäre eben hier, wenn ich speichern könnte
    Fenster A Ebene 1
    Fenster B Ebene 2
    Fenster C Ebene 3

    und das danach auch wieder genau so laden könnte.


    Aber wie gesagt, ich weiss gar nicht, ob so was möglich ist. Ich habe erstaunlich wenig zum Thema Formular-Ebenen Handling gefunden.
     

  4. #4
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Und wo wird die Reihenfolge der Fenster festgehalten? Gibt es ein Menü "Fenster" wo dann alle geöffneten Fenster eingetragen sind, so quasi auf die Art:

    Menü "Fenster"
    - 1 Fenster A
    - 2 Fenster B
    - 3 Fenster D
    - 4 Fenster C


    Dann könntest du ein globales Array anlegen welches den Namen, die ID oder ein sonstiges Kennzeichen des jew. Fensters in der Reihenfolge enthält wie sie sein soll.

    Du musst dann halt überall da wo die Reihenfolge geändert werden darf/muss das Array entsprechend neu ordnen.
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  5. #5
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Hm das Problem ist, die Reihenfolge ändert sich ja bei jedem Klick auf irgend ein Formular. Gibt es keine Windows eigene Funktion, welche so was speichert resp. ausliest.

    Und dann wäre ja immer noch das Problem, dass ich dann die Fenster so anordnen muss, am besten ohne das der User was davon mitbekommt.
     

  6. #6
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Also ob es eine Funktion innerhalb von Windows gibt, weiß ich nicht.

    Selbst wenn es so etwas gibt, dann musst du dieser Funktion auch sagen wann welches Fenster welche Position bekommen soll.

    Aber nochmal die Frage(n):
    Wo werden die Fenster angeordnet? Innerhalb eines Menüs, hat jedes Fenster seinen eigenen Eintrag in der Taskleiste oder wie?
    Wann und wie wird die Reihenfolge festgelegt. Macht das Programm eine feste Vorgabe oder hängt es davon ab in welcher Reihenfolge die Fenster zum ersten Mal durch den User geöffnet werden?

    NACHTRAG:
    Wenn der einzige Grund für die ungewollte Änderung der Reihenfolge der ist das bestimmter Code innerhalb einer bestimmten Form ausgeführt wird, dann soltest du vielleicht auch den Code ändern.

    Lagere doch den Code in separate Module aus dann können Berechnungen und ähnliche Dinge ausgeführt werden ohne eine bestimmte Form anzusprechen.
    Damit die Fenster beim Anzeigen auch die aktuelle Daten enthalten kannst du im Activate-Ereigniss einfach die Daten neu einlesen.
    Geändert von tombe (14.03.11 um 11:31 Uhr)
    DrMueller bedankt sich. 
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

  7. #7
    DrMueller DrMueller ist offline Mitglied Brokat
    Registriert seit
    Aug 2006
    Beiträge
    396
    Hallo tombe,
    diese werden eben noch nirgends gespeichert.
    Ich denke auch nicht, dass es realistisch ist, jeden Klick auf ein Fenster abzufangen und entsprechend zu speichern.
    Ich bin nicht ganz sicher, ob wir vom selben reden bzgl. Ebenen: Es geht rein um die Anzeige am Desktop.
    Ich habe soweit anscheinend nur zwei Möglichkeiten das ohne grösseren Aufwand umzusetzen:
    Ich speichere nur das oberste Fenster und setze dieses nach dem Aktualisieren der anderen Fenster
    Aktualisierung geschieht erst beim Form_Activate

    Danke schon mal.
     

  8. #8
    Avatar von tombe
    tombe tombe ist offline Mitglied Diamant
    tutorials.de Premium-User
    Registriert seit
    Sep 2004
    Ort
    Möglingen (BaWü)
    Beiträge
    3.109
    Zitat Zitat von DrMueller Beitrag anzeigen
    Ich bin nicht ganz sicher, ob wir vom selben reden bzgl. Ebenen: Es geht rein um die Anzeige am Desktop.
    Da könntest du recht haben, denn so wirklich verstanden habe ich es nicht.
    Wenn die Fenster wie oben geschrieben maximiert dargestellt werden sieht man ja eh nur das vorderste und die Reihenfolge der anderen ist (meiner Meinung nach) egal.

    Wenn die Fenster überlappend dargestellt werden, dann muss die Reihenfolge ja irgendwann irgendwie festgelegt werden. Es muss außerdem auch irgendwo definiert sein was passieren muss damit ein Fenster dauerhaft weiter nach vorne oder hinten gestellt wird.

    Erkläre doch ein bisschen genauer wie das ablaufen soll.
     
    Sollte ein Tipp von mir geholfen haben, habe ich nichts gegen eine entsprechende Bewertung oder ein Danke und wenn ein Problem gelöst ist, dann den Beitrag bitte auch als erledigt markieren.

    Was ich gar nicht leiden kann sind User die es nicht für nötig halten auf Antworten zu reagieren, die Themen nicht als erledigt markieren und/oder die sich nicht für Hilfe bedanken.

Ähnliche Themen

  1. Ebenen mit Ebenennamen speichern
    Von Alexander Groß im Forum Photoshop
    Antworten: 3
    Letzter Beitrag: 23.11.09, 20:15
  2. Ebenen als dds Dateien speichern
    Von csmi im Forum Photoshop
    Antworten: 4
    Letzter Beitrag: 19.02.09, 00:24
  3. GIMP - Ebenen transparenz setzen
    Von OdinPG im Forum Sonstige Grafik-Programme
    Antworten: 1
    Letzter Beitrag: 20.12.08, 18:22
  4. Ebenen Positon speichern
    Von snaich im Forum Javascript & Ajax
    Antworten: 1
    Letzter Beitrag: 17.08.08, 23:13
  5. Per Script alle Ebenen als PNG speichern
    Von fastfred im Forum Photoshop
    Antworten: 6
    Letzter Beitrag: 10.02.06, 17:01