X-Position des Fenster setzen?



  • Meine Anwendung soll am rechten Bildschirmrand ausgerichtet werden.
    Bislang ist sie immer in der Mitte aufgegangen.

    Nun dachte ich an die verwendung von der Eigenschaft x-Position.
    Diese steht standardmäßig auf 0. Setze ich diese auf 600 erziele
    ich den gewünschten Effekt.

    Nun die Frage: Kann dies bei anderen Auflösungen zu Problemen führen?
    Unter 800x600 sowie 1024x768 zeigte sich merkwürdigerweise keine Änderung.
    Anwendung weiterhin am rechten Bildschirmrand! 👍

    Oder ist dies eine relative Koordinate, die autom. angepasst wird?



  • Du solltest Dir erst mit GetSystemMetrics die vertikale Auflösung holen,
    dann von dieser die Breite Deines Fenster abziehen...



  • Ok, kann ich machen. Ich frage mich allerdings, warum es auch so reibungslos
    zu klappen scheint 😕



  • Duz kannst es auch einfach über den X bzw. Y-Wert für den Dialog steuern.
    Man berichtige mich, aber es wird über diese Werte IMMER relativ zum Bild-
    schirm gesetzt. Du kannst da bei einer Auflösung von 800x600 ruhig 123443545
    hinschreiben. Es wird automatisch auf Kante rechts gesetzt!!



  • Bist du da sicher? Ich finde dazu keine nähere Info im Visual Studio,
    bzw. google.

    Ich möchte auch nicht irgendwann einen wütenden Anruf bekommen, dass
    die Anwendung immer halb ausm Bild verschwindet nachm start 🙄


  • Mod

    Was Freakyaunt schreibt ist korrekt.

    Diese 600, die Du bei der Dialogressource angegeben hast, sind Dialog Base units und keine Pixel. D.h. diese werden erst in Punkte umgerechnet. Insofern ist das selbst bei 1024 Pixel weit rechts außerhalb des Monitors.

    Der Dialoglader korrigiert die Daten so, dass der Dialog möglichst vollständig in den Bildschirm kommt.


Anmelden zum Antworten