Positions- und Größenänderung eines Fensters verhindern



  • Hallo,

    gibt es eine Möglichtkeit, die Positions- bzw. Größenänderung eines Fensters zu verhindern, wenn der Aufruf (z.B. SetWindowPos) dazu von ausserhalb meines Prozesses erfolgte?

    Wenn ja, hat einer einen Tipp?
    Danke.


  • Mod

    Bleibt die Frage: Warum willst Du das: Es gibt ja gute Gründe, dass zum Beispiel die Shell ein Fenster maximiert minimiert oder positioniert.
    Ein solches Programm, dass ich über die Shell nicht bedienen kann würde ich als "störend" (milde ausgedrückt) empfinden.

    Du kannst es verhindern, aber nur grundsätzlich.
    Siehe WM_WINDOWPOSCHANGING.

    Du musst also nur Unterscheiden, was kommt aus Deiner Anwendnung was von extern. Dazu könntest Du ein Flag verwenden, dass Du setzt um die Fensterpositionsänderung freizzuschalten und zurück setzt, wenn Du das nicht mehr willst.



  • Habe 2 toplevel fenster A und B. B ist an A gedockt. B soll nur über A in MOVE/SIZE gesteuert werden, nicht aber von ausserhalb.



  • Will kein Flag setzen!
    Dachte eher an Message Source (hwnd/thread id/process id), oder sowas.


  • Mod

    Es gibt keine Message-Source...

    Dann verwende doch User-Defined Messages für den Repos.



  • Martin Richter schrieb:

    Es gibt keine Message-Source...

    Habe ich mir schon fast gedacht 😞

    Werde es mit User-Defined Messages machen.
    Danke.


Log in to reply