Qt und DPI



  • Hallo!

    Ich habe mal versucht, eine Qt Anwendung vom Windows DWM skalieren zu lassen, wenn die DPI über 100% liegen; ohne Erfolg!

    Das Manifest habe ich auf "DPI Awareness: none" eingestellt, trotzdem bleibt die Fenstergröße gleich und es sieht auch nicht verschwommen (skaliert) aus.

    Wie kann das sein? Wie verhindert Qt, dass Windows skaliert?
    SetProcessDPIAware/ness wird von Qt nicht importiert.

    Getestet mit Windows 8.1 und 150% DPI.

    😕



  • Ach mist, Qt nutzt scheinbar doch SetProcessDPIAwareness.

    Also bei Win 8.1 muss man dies machen, damit skaliert wird:
    SetProcessDpiAwareness(PROCESS_DPI_AWARENESS::PROCESS_DPI_UNAWARE);

    Aber für Win Vista/7 gibt es nur SetProcessDPIAware ohne Parameter.
    Wie könnte ich dort das Skalieren forcieren?
    Ein Manifest scheint nichts zu bewirken, mit Win 7 wird nicht skaliert...



  • Einfach ein Verdacht: Das Skalierungsverhalten wurde mit Windows 8 massiv verbessert, es kann durchaus sein das du auf Windows 7 schlicht keine Chance hast...



  • Ich habe es auf Win 7 aber schon mit einer normalen Windows-Anwendung getestet.
    Das ganze Fenster samt Inhalt wird hochskaliert.

    (Falls du das meinst)


Anmelden zum Antworten