Wie man Größe und position von Fenster-caption-buttons (minimieren, wiederherstellen, schließen)
Gibt es einen API-Aufruf, um zu bestimmen, die Größe und position der Fenster-Schaltflächen mit Beschriftung? Ich bin versucht zu zeichnen, vista-Stil-Schaltflächen mit Beschriftung auf einem Besitzer-Fenster gezogen. Ich bin im Umgang mit c/c++/mfc.
Edit: Hat jemand ein code-Beispiel zum zeichnen der schließen-button?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fand ich die Funktion, die erforderlich sind, um die position der buttons in vista: WM_GETTITLEBARINFOEX
Dieser link zeigt auch die system-Metriken benötigt werden, um alle den Abstand korrigieren (schade, es ist nicht ein full-dialog Bild aber). Das funktioniert perfekt unter Vista, und vor allem in XP (bei XP ist es etwas zu viel von einer Lücke zwischen den Schaltflächen).
GetSystemMetrics gibt all diese Informationen. Zum zeichnen innerhalb von Fenster-Dekoration, verwenden Sie Getwindowdc abgerufen.
Den folgenden code angepasst ist, aus dem "Global Titelleiste Hook" - Beispiel fand ich bei http://www.catch22.net/content/snippets. Ich veränderte das Beispiel zu machen, MFC-freundlich. Es gibt die X-Koordinate der linken Titelleiste Schaltfläche, aber es könnte leicht geändert werden, um zu finden, die die position von jeder der Tasten.
GetSystemMetrics Funktion soll Ihnen helfen, mit einer Größe (SM_CYSIZE und SM_CXSIZE Parameter).
BEARBEITEN
Ich bin mir nicht sicher, finden Sie Positionen, die mit dieser Funktion, aber Sie könnte nehmen Sie einen Blick auf emule source code, Sie haben es geschafft, fügen Sie eine Schaltfläche zu einem Fenster Beschriftung.