Maximieren und Minimieren deaktivieren zur Laufzeit ???
-
Ich brauch mal eine kleine Hilfe..... :xmas1: :xmas2:
Bin noch ein AnfängerGrünschnabel
Ich möchte zur Laufzeit die Min-und Max Button des Systemmenüs der
Dialogbox deaktivieren und aktivieren.
Folgendes Beispiel mit Schließen-Kreuz geht prima:[b]CMenu* p_Menu =AfxGetMainWnd()->GetSystemMenu(FALSE); p_Menu->EnableMenuItem(SC_CLOSE, MF_GRAYED); [/b]
Deaktiviert das Schließen-Kreuz.
Habe ich von www.coding-help.de sehr gut für AnfängerFolgender Code geht aber nicht für Max oder Min.
CMenu* p_Menu =AfxGetMainWnd()->GetSystemMenu(FALSE); p_Menu->EnableMenuItem(SC_MAXIMIZE, MF_GRAYED); ...oder SC_ZOOM
Da gibt es doch bestimmt wieder einen Trick...
In meinen Büchern finde ich mal wieder keine Hilfe.
Schon mal vielen Dank.Viele Grüße aus Gütersloh
Thomas
tsp2002
-
Du kannst den Code in jeder Funktion ausführen und nicht nur in der InitDialog
!
Wenn du z.B. die WM_CLOSE Nachricht erhälst könntest du die Anweisung starten.Und für MAXIMIZE: Schau dir mal SetMenuItemInfo() in der MSDN an.
Weiß allerdings nicht ob das klappt.
-
versuch es mal mit ...
AfxGetMainWnd()->ModifyStyle ( 0, WS_MAXIMIZEBOX ); //Um MAXIMIZEBOX zu aktivieren AfxGetMainWnd()->ModifyStyle ( WS_MAXIMIZEBOX, 0 ); //Um MAXIMIZEBOX zu deaktivieren
-
oder die beiden Nachrichten abfangen und mit nem if testen, obs an die Elternklassen weitergereicht wird oder nicht, wäre die Holzhammer-Methode^^
Ne set-Methode zum Ein/- Aussschalten ist natürlich schöner
-
Hallo :xmas1: :xmas2:
Vielen Dank für Eure Hilfe....// Maximieren deaktivieren: AfxGetMainWnd()->ModifyStyle (WS_MAXIMIZEBOX, 0 ); CMenu* p_Menu =AfxGetMainWnd()->GetSystemMenu(FALSE); p_Menu->EnableMenuItem(SC_MAXIMIZE, MF_GRAYED); // Maximieren aktivieren AfxGetMainWnd()->ModifyStyle(0,WS_MAXIMIZEBOX); CMenu* pSysMenu = AfxGetMainWnd()->GetSystemMenu(FALSE); pSysMenu->EnableMenuItem(SC_MAXIMIZE, MF_ENABLED); // Minimieren deaktivieren AfxGetMainWnd()->ModifyStyle (WS_MINIMIZEBOX, 0 ); CMenu* p_Menu =AfxGetMainWnd()->GetSystemMenu(FALSE); p_Menu->EnableMenuItem(SC_MAXIMIZE, MF_GRAYED); // Minimieren aktivieren AfxGetMainWnd()->ModifyStyle(0,WS_MINIMIZEBOX); CMenu* pSysMenu = AfxGetMainWnd()->GetSystemMenu(FALSE); pSysMenu->EnableMenuItem(SC_MAXIMIZE, MF_ENABLED);
Besonders hat mir auch der ausführliche Code von
www.coding-help.de geholfen...
schaut mal auf diese Seite....sehr gut für AnfängerMerry Christmas to All :xmas1: