Benutzer mit den meisten Antworten
MFC SDI Anwendung, in den Rahmen zeichnen

Frage
-
Hallo,
Ich würde gern etwas in den Rahmen meiner MFC-SDI-Anwendung Hineinzeichnen. Genauer möchte ich gern ein paar button und vielleicht noch ein Slider und Prozessbar in den Unteren Bereich des Windows-Rahmens zeichnen. Ich weiß nicht ob es überhaupt möglich ist, aber ist es denn möglich ein Popup-Menü dierekt in der Titelleiste des Programms anzuzeigen?, also so das es so aussieht, als wenn das Programm kein Menü hätte, aber es steckt ja in der Titelleiste.Ich habe echt keine ahnung ob und wenn ja, wie das geht. Ich habe so einen Button im Rahmen mal bei den Prozessdialogen von Paint.NET gesehen. Hoffe echt mi kann jemand helfen.
VisualCPlusPlus
Antworten
-
WM_NCPAINT ist der Handler der Dich in den Rahmen Zeichnen lässt. Aber Achtung unter Windows7 gehört dieser Rahmen IMHO dem DWM (Dynamic Windows Manager).
Ich würde das bleiben lassen, denn Du machst Dein Programm evtl. inkompatbel zur nächsen Windows Version oder zu anderen Windows Versionen. Die Rahmen werden normalerweise ausschließlich vom System gezeichnet.
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort markiert KK Senior Sonntag, 31. Juli 2011 17:50
Alle Antworten
-
WM_NCPAINT ist der Handler der Dich in den Rahmen Zeichnen lässt. Aber Achtung unter Windows7 gehört dieser Rahmen IMHO dem DWM (Dynamic Windows Manager).
Ich würde das bleiben lassen, denn Du machst Dein Programm evtl. inkompatbel zur nächsen Windows Version oder zu anderen Windows Versionen. Die Rahmen werden normalerweise ausschließlich vom System gezeichnet.
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de- Als Antwort markiert KK Senior Sonntag, 31. Juli 2011 17:50
-
Nagut...
Kann ich WM_NCPAINT wie OnPaint() benutzen, wenn ich das mal probieren möchte?
Und, bei einem Ribbon-Menü sind die Scnellzugriffsbutton doch auch im rahmen, oder liegt das daran das Windows das bereits kennt und deswegen keine Kompatibilitätsprobleme auftreten?
VisualCPlusPlus -
Kann ich WM_NCPAINT wie OnPaint() benutzen, wenn ich das mal probieren möchte?
Richtig!
Es gibt dazu auch Samples auf www.codeproject.com aber wie gesagt. Seit Vista und DRM ist das alles eine Sache für sich.Und, bei einem Ribbon-Menü sind die Scnellzugriffsbutton doch auch im rahmen, oder liegt das daran das Windows das bereits kennt und deswegen keine Kompatibilitätsprobleme auftreten?
Die liegen in der Client Area und sind selbst Fenster.
Martin Richter -- MVP for VC++ [Germany] -- http://blog.m-ri.de