Rubrik: Oberfläche · Menüs | VB-Versionen: VB4, VB5, VB6 | 31.01.01 |
Einträge aus dem Systemmenü entfernen Dieser Tipp zeigt, wie Sie bestimmte Einträge aus dem Systemmenü einer Form entfernen können. | ||
Autor: Heinz Prelle | Bewertung: | Views: 18.346 |
www.visual-basic5.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | Beispielprojekt auf CD |
Dieser Tipp zeigt, wie Sie bestimmte Einträge aus dem Systemmenü einer Form entfernen können.
' zunächst die benötigten API-Funktionen Private Declare Function DeleteMenu Lib "user32" ( _ ByVal hMenu As Long, _ ByVal nPosition As Long, _ ByVal wFlags As Long) As Long Private Declare Function GetSystemMenu Lib "user32" ( _ ByVal hwnd As Long, _ ByVal bRevert As Long) As Long Private Const MF_BYPOSITION = &H400& Public Enum SysMenuItem miRemove = 0 ' Wiederherstellen miMove = 1 ' Verschieben miSize = 2 ' 2 = Grösse ändern miMinimize = 3 ' 3 = Minimieren miMaximize = 4 ' 4 = Maximieren miSeparator = 5 ' 5 = Trennlinie miClose = 6 ' 6 = Schliessen End Enum Public Sub MenuItemRemove(hWnd As Long, item As SysMenuItem) Dim Handle As Long Dim Result As Long Handle = GetSystemMenu(hWnd, False) Result = DeleteMenu(Handle, item, MF_BYPOSITION) End Sub
Beispiel:
' Minimieren entfernen MenuItemRemove Me.hWnd, miRemove ' Schliessen entfernen MenuItemRemove Me.hWnd, miClose