Dialog ohne Rahmen ?
-
Ich möchte Eigenschaften eines Dialogs zur Laufzeit festlegen.
Dabei insbesondere das dieser Dialog keine Rahmen haben soll.
Wie machen ich das ?Matthias
-
Ich gehe mal vom schlimmsten Fall aus, dass der Dialog modal ist und schon angezeigt wird. Um den Rahmen zu entfernen, könnte folgender Code innerhalb der Dialogklasse helfen (ist nicht getestet, keine Garantie):
LONG style = ::GetWindowLong(m_hWnd, GWL_STYLE); style &= ~WS_BORDER; style &= ~WS_DLGFRAME; style &= ~WS_THICKFRAME; ::SetWindowLong(m_hWnd, GWL_STYLE, style); // Auf ähnliche Weise evtl. auch die WS_EX...-Styles zurücksetzen! // ... SetWindowPos(0, 0, 0, 0, 0, SWP_DRAWFRAME|SWP_FRAMECHANGED|SWP_NOMOVE|SWP_NOSIZE|SWP_NOZORDER);Gruß Frdln
-
Geht in der MFC etwas einfacher mit ModifyStyle.
myWnd->ModifyStyle(WS_BORDER|WS_DLGFRAME|WS_THICKFRAME,0);
-
Martin Richter schrieb:
Geht in der MFC etwas einfacher mit ModifyStyle.
myWnd->ModifyStyle(WS_BORDER|WS_DLGFRAME|WS_THICKFRAME,0);Worauf bezieht sich dann myWnd ?
Matthias
-
Auf deinen Dialog.