Guten Abend,
ich programmiere mit der WinAPI in C/C++/Assembler und habe in meinem Fenster mit der Funktion Rectangle(HDC, int, int, int, int) ein Rechteck gezeichnet, das sich immer an die untere Seite des Fensters anpasst. Wird das Fenster also bewegt, folgt das Rechteck dem Fenster.
Jetzt hatte ich mir vor einigen Tagen einen Laptop gekauft und da ist mir ein Problemchen ersichtlich geworden, das einem erst auffällt, sobald man sein selbst geschriebenes Programm mal woanders testet ...
Der Computer, an dem ich das Rechteck schön an die untere Seite des Fensters angepasst habe, hat eine Auflösung von 3840|2160, der Laptop eine von 1920|1080. Ich habe die letzten Stunden schon so viel herumprobiert und im Internet gesucht, bin aber nicht fündig geworden.
Das Rechteck passt also genau an den unteren Rand meines Fensters, wenn ich das Programm auf meinem PC (3840|2160) starte. Auf dem Laptop hingegen ist das gesamte Rechteck scheinbar um ca. 7 Pixel verschoben.
Ich weiß nun nicht, wie ich herausfinden kann, um wie viele Pixel ich die obere Kante des Rechtecks anpassen muss, damit das Rechteck sowohl auf dem Laptop als auch auf meinem großen PC gleich aussieht. Die 7 Pixel sind ja jetzt auch nur eine aus dem Himmel gegriffene Zahl, die ja genau für die Laptop-Auflösung passen. Eine Magic-Number, mit der ich nichts weiter anfangen kann. Ich bräuchte eine Möglichkeit, um herauszufinden, welche Maße mein Rechteck haben muss, wenn ich die und die Auflösung habe.
Kennt sich da vielleicht jemand mit aus?
Vielen Dank vorab schon mal.
ich programmiere mit der WinAPI in C/C++/Assembler und habe in meinem Fenster mit der Funktion Rectangle(HDC, int, int, int, int) ein Rechteck gezeichnet, das sich immer an die untere Seite des Fensters anpasst. Wird das Fenster also bewegt, folgt das Rechteck dem Fenster.
Jetzt hatte ich mir vor einigen Tagen einen Laptop gekauft und da ist mir ein Problemchen ersichtlich geworden, das einem erst auffällt, sobald man sein selbst geschriebenes Programm mal woanders testet ...
Der Computer, an dem ich das Rechteck schön an die untere Seite des Fensters angepasst habe, hat eine Auflösung von 3840|2160, der Laptop eine von 1920|1080. Ich habe die letzten Stunden schon so viel herumprobiert und im Internet gesucht, bin aber nicht fündig geworden.
Das Rechteck passt also genau an den unteren Rand meines Fensters, wenn ich das Programm auf meinem PC (3840|2160) starte. Auf dem Laptop hingegen ist das gesamte Rechteck scheinbar um ca. 7 Pixel verschoben.
Ich weiß nun nicht, wie ich herausfinden kann, um wie viele Pixel ich die obere Kante des Rechtecks anpassen muss, damit das Rechteck sowohl auf dem Laptop als auch auf meinem großen PC gleich aussieht. Die 7 Pixel sind ja jetzt auch nur eine aus dem Himmel gegriffene Zahl, die ja genau für die Laptop-Auflösung passen. Eine Magic-Number, mit der ich nichts weiter anfangen kann. Ich bräuchte eine Möglichkeit, um herauszufinden, welche Maße mein Rechteck haben muss, wenn ich die und die Auflösung habe.
Kennt sich da vielleicht jemand mit aus?
Vielen Dank vorab schon mal.