README.md

December 4, 2022 ยท View on GitHub

Kill the Windowz Close Button (X)

Description

This subroutine will disable the Windows 9x/NT

' close button, also known as the little X

' button. It's really useful when you have a

' form that you don't want to set its ControlBox

' property to False. Write this code in a

' standard module (BAS).

More Info

Should be familiar with the Windows API.

If you're playing around with the system

' menu in other ways in your program, you

' might have to change the position number

' in your RemoveMenu function calls. Also,

' you could have problems running this

' with a MDI child.

Submitted On
ByJonathan Smith
LevelUnknown
User Rating5.0 (35 globes from 7 users)
CompatibilityVB 4.0 (32-bit), VB 5.0, VB 6.0
CategoryCustom Controls/ Forms/ Menus
WorldVisual Basic
Archive File

API Declarations

Private Declare Function GetSystemMenu Lib "user32" _
(ByVal hWnd As Long, ByVal bRevert As Long) As Long
Private Declare Function RemoveMenu Lib "user32" _
(ByVal hMenu As Long, ByVal nPosition As Long, ByVal wFlags As Long) As Long
Private Const MF_BYPOS = &H400&

Source Code

Public Sub KillCloseButton(hWnd As Long)
 Dim hSysMenu As Long
 hSysMenu = GetSystemMenu(hWnd, 0)
 Call RemoveMenu(hSysMenu, 6, MF_BYPOS)
 Call RemoveMenu(hSysMenu, 5, MF_BYPOS)
End Sub
'Call the above function from a form as it's being loaded
Private Sub Form_Load()
 KillCloseButton Me.hWnd
End Sub