25/04/2024
Windev et les Api WindowsNb de visiteurs en ligne : 1
>> Introduction << >> Codes et Forum << >> Download <<


Rubrique : 5 - Trucs et astuces       Sujet : Rajouter une barre d'icônes à gauche d'une fenêtre mère MDI
Auteur Message
 °¨¨ JL ¨¨° Posté le : 23/06/2000 12:00:00


// Le but est de rajouter une barre d'icônes sur la gauche d'une fenêtre mdi, il faut que cette barre soit active, il ne faut pas que cette barre soit recouverte par les fenêtres filles lorsque ces dernières sont maximisées.
// Vous devez placer vos boutons ainsi qu'une zone libellé qui va servir de cadre sur la gauche de la fenêtre mère.

// A l'ouverture de la fenêtre mère 'mdi1' :  

global

even est un entier long
even=evenement("wmsize","mdi1",0x5) // wm_size  
wmsize()


// A la fermeture de la fenêtre 'mdi1'

finevenement(even)


// La procédure :

Procédure wmsize()

larg est un entier=fenintlarg() // largeur interne fenêtre mère
haut est un entier=feninthaut() // hauteur interne fenêtre mère
bar_larg est un entier=lib1..largeur // largeur du libellé servant de cadre

// handle de la zone client
handclt est un entier long=appeldll32("user32","FindWindowExA", handle() , null , "MDIClient" , null)

appeldll32("user32","ShowWindow",handclt,0) // invisible

// modif taille et position de la zone client
// haut-19 pour la barre de message du bas de la fenêtre mère
appeldll32("user32","SetWindowPos",handclt,0,bar_larg,0,larg-bar_larg,haut-19,0)

appeldll32("user32","ShowWindow",handclt,1) // visible

// modif taille et position de la barre de message si il y en a une
handbar est un entier long=appeldll32("user32","FindWindowExA" , handle() , null , "BARMESS" , null)
appeldll32("user32","SetWindowPos",handbar,0,bar_larg,haut-21,larg-bar_larg,20,0)

// modif taille du libellé servant de cadre
lib1..ligne=0
lib1..colonne=0
lib1..hauteur=haut

_eve.retour=0