|
Iniciado por alain.thiemard, 15,mar. 2006 14:50 - 3 respuestas |
| |
| | | |
|
| |
Publicado el 15,marzo 2006 - 14:50 |
Bonjour à tous J'aurais besoin de pouvoir activer ou non le bouton maximise ou alors au pire faire apparaitre ou non la barre de tire par programmation est ce possibe? Si oui, pourrait-on m'expliquer comment faire ou au moins ou trouver l'information, car sur l'aide, il n'y pas grand chose
merci d'avance Alain |
| |
| |
| | | |
|
| | |
| |
Publicado el 15,marzo 2006 - 16:44 |
Bonjour
Voila une procédure qui te permet de faire ce type de modification :
PROCEDURE ModifAttFen(iSupAtt=0,iAddAtt=0) // Gestions des attributs de la fenetres // iSupAtt [in]: Attributs à supprimer // 0x0001 Grise/Enlève le bouton maximise (grisé sous Win95) // 0x0002 Grise/Enlève le bouton iconise (grisé sous Win95) // 0x0004 Enlève les bords de modification de taille // 0x0008 Grise/Enlève le menu système (les trois icones sous NT) (grisé sous Win95) // 0x0040 Enlève la barre de titre // iAddAtt [in]: Attributs à restaurer // LOCAL GWL_STYLE est un entier =-16 lInt est un entier i2 est une entier
// Retourne les information de style de la fenêtre courante // LONG GetWindowLong( // HWND hWnd, // handle to window // int nIndex // offset of value to retrieve // ); lInt=AppelDLL32("User32", "GetWindowLongA", Handle(""), GWL_STYLE)
i2=HiWord(lInt) i2=i2-ETBinaire(i2,iSupAtt) i2=OUBinaire(i2,iAddAtt)
lInt=i2*65536+LoWord(lInt)
// Change les attributs de style de la fenêtre // LONG SetWindowLong( // HWND hWnd, // handle to window // int nIndex, // offset of value to set // LONG dwNewLong // new value // );
AppelDLL32("User32","SetWindowLongA",Handle(""),GWL_STYLE,lInt) AppelDLL32("User32","SetWindowPos",Handle(""),0,0,0,0,0,0x27)
A+
-- Francis MOREL |
| |
| |
| | | |
|
| | |
| |
Publicado el 15,marzo 2006 - 16:44 |
voila un code pour griser le bouton maximise de la fenetre:
bAgrandissement est un booléen
HdlFen est un entier long= Handle(NomDeLaFenetre) GWL_STYLE est un entier = -16
WS_MAXIMIZEBOX est un entier long = 65536
RDW_FRAME est un entier long = 1024 RDW_INVALIDATE est un entier long = 1 RDW_UPDATENOW est un entier long = 256
infoFen est un entier long =AppelDLL32("user32","GetWindowLongA",HdlFen,GWL_STYLE)
SI bAgrandissement = 1 ALORS //--- affiche icone agrandissement infoFen = OUBinaire(infoFen,WS_MAXIMIZEBOX) SINON //--- efface icone agrandissement infoFen = ETBinaire(infoFen,NONBinaire(WS_MAXIMIZEBOX)) FIN
AppelDLL32("user32","SetWindowLongA",HdlFen,GWL_STYLE,infoFen)
AppelDLL32("user32","RedrawWindow",HdlFen,Null,Null,RDW_FRAME+RDW_INVALIDATE+RDW_UPDATENOW) |
| |
| |
| | | |
|
| | |
| |
Publicado el 15,marzo 2006 - 17:19 |
mon code est a mettre dans une procédure avec comme paramètre :bAgrandissement et NomDeLaFenetre |
| |
| |
| | | |
|
| | | | |
| | |
|