Systemmenu abschalten
Mit diesem Code wird das Systemmenu geleert. Wenn man mit SC_CLOSE den "Schließen"-Eintrag entfernt, wird gleichzeitig das "X" zum Schließen des Fensters inaktiviert (bleibt aber sichtbar). Damit kann man ein nicht schließbares Fenster erzeugen (was mit
Delphi-Quellcode:
auch geht), aber gleichzeitig das Icon für das Fenster behalten (Was mit BorderIcons nicht geht).
BorderIcons = []
Natürlich kann man mit diesem Code auch nur einzelne Elemente entfernen.
Delphi-Quellcode:
procedure TWorkerMainframe.FormCreate(Sender: TObject);
var hWnd: THandle; begin hWnd := GetSystemMenu(Self.Handle, False); RemoveMenu(hWnd, SC_SIZE, MF_BYCOMMAND); RemoveMenu(hWnd, SC_MOVE, MF_BYCOMMAND); RemoveMenu(hWnd, SC_MINIMIZE, MF_BYCOMMAND); RemoveMenu(hWnd, SC_MAXIMIZE, MF_BYCOMMAND); RemoveMenu(hWnd, SC_RESTORE, MF_BYCOMMAND); RemoveMenu(hWnd, SC_CLOSE, MF_BYCOMMAND); DeleteMenu(hWnd, 0, MF_BYCOMMAND); // Der letzte Separator im Menu kommt auch noch weg end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:20 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz