Re: Menu Système

Posté par drcharly93 le 22/2/2005 14:41:48
Bonjour,

Transcription d'un code trouvé en vb
Dans l'initialisation de la classe ou du projet, déclaration des constantes
GLOBAL
	CONSTANTE
		GWL_STYLE = (-16)
		MF_BYCOMMAND = 0
		MF_BYPOSITION = 0x400
		SC_MINIMIZE = 0xF020
		SC_MAXIMIZE = 0xF030
		SC_CLOSE = 6
		WS_MAXIMIZEBOX = 0x10000
		WS_MINIMIZEBOX = 0x20000
FIN

Procédure ou méthode pour griser le bouton X
PROCEDURE No_X(phWndFenetre est un entier)
//Désactiver X
hMenu, k sont des entiers 
hMenu = API("user32","GetSystemMenu",phWndFenetre, Faux)
k = API("user32","DeleteMenu",hMenu, SC_CLOSE, MF_BYPOSITION)

Procédure ou méthode pour griser le bouton Min
PROCEDURE No_Min(phWndFenetre est un entier)
//Désactiver 'minimiser'
hMenu, k sont des entiers
hMenu = API("user32","GetSystemMenu",phWndFenetre, False)
k = API("user32","DeleteMenu",hMenu, SC_MINIMIZE, MF_BYCOMMAND)
k = API("user32","GetWindowLongA",phWndFenetre, GWL_STYLE)
k = OUExclusifBinaire(k, WS_MINIMIZEBOX)
API("user32","SetWindowLongA", phWndFenetre, GWL_STYLE, k)

Procédure ou méthode pour griser le bouton Max
//Désactiver 'maximiser'
hMenu, k sont des entiers
hMenu = API("user32","GetSystemMenu",phWndFenetre, False)
k = API("user32","DeleteMenu",hMenu, SC_MAXIMIZE, MF_BYCOMMAND)
k = API("user32","GetWindowLongA", phWndFenetre, GWL_STYLE)
k = OUExclusifBinaire(k, WS_MAXIMIZEBOX)
API("user32","SetWindowLongA", phWndFenetre, GWL_STYLE, k)


Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=12&topic_id=1877&post_id=7796