Der MS Edge hat auch ne andere Titelleiste mit ein paar Extras. Also ein Standard (sogar von MS selbst) gibt es nicht mehr. Ein eigenes Design bedeutet ja nicht, man macht alles anders. Aber auch wenn es doch ein wenig speziell wird (Farben bei Adobe) kommt das gut an.
Jedenfalls macht so ein Panel (align=alBottom und alignment=taRightJustify) mit einem normalen bsNone und wsMaximized alles richtig. Aber im Beispielprojekt halt nicht. Dafür geht aber diese "MS-zum-Rand-verschiebe-Funktion". Die nennt sich übrigens "Snap In"
Ich mach übrigens mein Programm, was das Design angeht, recht offen für Änderungen. Der Anwender selbst kann dann entscheiden, ob's im Windows-Standard-Stil angezeigt wird oder er es doch sehr Benutzerdefiniert haben möchte.
Deshalb sind "Eigene Titelleisten, runde Buttons, dies und das" nicht gleich eine Fehlprogrammierung. Es kommt halt immer darauf an.
Also die Breite des Fensterrahmens kann man sicherlich durch die
API ermitteln. So könnte man es wohl irgendwie fixen, dass es wieder stimmt. Jedoch nehme ich solche Werte (auch andere Daten wie Farbwerte) aus der
API nicht mehr gerne. Einiges ist wohl auch nur noch vorhanden, wegen der Abwärtskompatibilität. Also man muss heute schon überlegen, was man so aus der
API noch nimmt. Bevor ich mich hier probiere, wollte ich nur mal dieses Beispielprojekt hochladen und mal fragen, ob jemand eine Idee dazu hat.
Ich find's halt toll, diese einfache Möglichkeit, sozusagen eine Form zu haben, die ganz leer ist (alle Möglichkeiten offen zum Design) aber mit dieser "Snap In" Funktion, die dabei erhalten bleibt. Die "Snap In" Funktion finde ich eine tolle Sache und sicherlich nutzen das viele Anwender in der heutigen Zeit mit größeren und oder mehreren Monitoren. Also die Funktion sollte dann natürlich erhalten bleiben.