En fait, les trois boutons en haut à droite du Formulaire correspondent à plusieurs options du ControlBox (ControlBox) en haut à gauche du Formulaire (réduire/agrandir/fermer), parmi lesquelles maximiser (MaxButton) et minimiser ( Minbutton) Ils peuvent être paramétrés directement dans les propriétés du Formulaire, mais VB ne propose pas la fonction de paramétrage du bouton "X" ! Pour réaliser cette fonction, vous devez utiliser l'API :
Puisque le bouton "X" correspond à l'option de fermeture de ControlBox, il suffit de supprimer l'option de fermeture du menu système (c'est-à-dire ControlBox) ! Vous pouvez d'abord jeter un œil au menu système dans le coin supérieur gauche du navigateur que vous utilisez. Quel numéro est l'option [Fermer], et non le 6ème ? C’est le 7ème, et la ligne de démarcation compte pour une ! Le diviseur est le 6ème !
Lorsque nous supprimons l’option de fermeture, une étrange ligne de séparation sera laissée, il est donc préférable de supprimer également la ligne de séparation. L'index du menu commence à 0 et la ligne de démarcation est la 6ème, donc Index=5.
Correction : Afin que le code du programme fonctionne correctement sous Windows NT, modifiez le type Integer en Long. 89.05.04
'Attrapez le chien du menu système
PRivateDeclareFunctionGetSystemMenuLib"user32"Alias"GetSystemMenu"(ByValhwndAsLong,ByValbRevertAsLong)AsLong
'Supprimer l'API du menu système
PrivateDeclareFunctionRemoveMenuLib"user32"Alias"RemoveMenu"(ByValhMenuAsLong,ByValnPositionAsLong,ByValwFlagsAsLong)AsLong
'Le premier paramètre est le propriétaire du menu système
'Le deuxième paramètre est l'Index-> de l'option à supprimer