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


Rubrique : 3 - Champs       Sujet : List Boxes
Auteur Message
 °¨¨ JL ¨¨° Posté le : 23/06/2000 12:00:00


// Ajouter une liste de fichiers ************
// liste non graphique

ch est un chaine asciiz de 128="c:windowssystem*.dll"
lb_resetcontent est un entier long = 0x184
lb_dir est un entier long= 0x18D

sendmessage( handle("liste1") , lb_resetcontent , 0 , 0 )

listeajoute("liste1","")

// voir l'exemple de la combo pour les option ddl_*
nbfic est un entier = sendmessage( handle("liste1") , lb_dir , ddl_archive+ddl_hidden , &ch)
listesupprime("liste1",1)
message(nbfic)



// Modifier la hauteur de ligne ************
lb_setitemheight est un entier long = 0x1A0
liste1..etat=invisible
// hauteur de ligne fixée à 25 pixels
sendmessage( handle("liste1") , lb_setitemheight , 0 , 25 )
liste1..etat=actif



// Modifier la largeur des colonnes (liste multi-colonnes) ************
lb_setcolumnwidth est un entier long = 0x195
largc est un entier = 200 // largeur colonne en pixels
sendmessage( handle("liste1") , lb_setcolumnwidth , largc , 0 )



// Modifier le premier item visible ************
lb_settopindex est un entier long = 0x197
// place l'item 3 en haut de la liste
sendmessage( handle("liste1") , lb_settopindex , 3 , 0 )



// Mofifier le style **************
// permet de modifier les dimensions de la liste en cliquant sur les bordures

style1 est un entier long
style2 est un entier long
gw_style est un entier long=-16
gw_exstyle est un entier long=-20
ws_border est un entier long = 0x800000
ws_thickframe est un entier long = 0x40000

style1=appeldll32("user32","GetWindowLongA", handle("liste1") , gw_style )

liste1..etat=invisible
style2 = oubinaire( style1 , ws_thickframe )
appeldll32("user32","SetWindowLongA", handle("liste1") , gw_style , style2 )
liste1..etat=actif



// Obtenir la hauteur de ligne ************
lb_getitemheight est un entier long = 0x1A1
hautl est un entier = sendmessage( handle("liste1") , lb_getitemheight , 0 , 0 )
message(hautl)



// Récupérer le nombre d'items *******
lb_getselcount est un entier long = 0x190
nbfic est un entier = sendmessage( handle("liste1") , lb_getselcount , 0 , 0 )
message(nbfic)



// Récupérer le premier item visible ********
lb_gettopindex est un entier long = 0x18E
topind est un entier = sendmessage( handle("liste1") , lb_gettopindex , 0 , 0 )
message(topind)



// Récupérer les coordonnées d'un item ********
rectl est compose de
    l est un entier long
    t est un entier long
    r est un entier long
    b est un entier long
fin
lb_getitemrect est un entier long = 0x198
item est un entier = 2 // base 0
sendmessage( handle("liste1") , lb_getitemrect , item , &rectl )
message(rectl.l+" "+rectl.t+" "+rectl.r+" "+rectl.b)



// Récupérer l'item survolé **************
// 0x200 -> mousemouve
even est un entier long = evenement( "survolliste" , "liste1" , 0x200 )

Procédure survolliste()

// 0x01A9 -> LB_ITEMFROMPOINT
// _eve.lparam contient la position de la souris

item est un entier long = sendmessage( handle("liste1") , 0x01A9 , 0 , _eve.lparam ) + 1
message(item)



// Sélectionner un item *************
lb_setcursel est un entier long = 0x186
// sélection de l'item 3
sendmessage( handle("liste1") , lb_setcursel , 3 , 0 )



// Supprimer tout le contenu *************
lb_resetcontent est un entier long = 0x184
sendmessage( handle("liste1") , lb_resetcontent , 0 , 0 )