Création d'imagebox en série et empilement de labelbox

cs_Bouboutch Messages postés 2 Date d'inscription mercredi 16 juillet 2003 Statut Membre Dernière intervention 13 août 2003 - 13 août 2003 à 12:22
crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 - 13 août 2003 à 14:11
El Bouboutch

Bonjour,bonjour

Je cherche à résoudre ces deux problèmes sous VB :

Cactus ONE :
Existe t-il une procédure permettant de créer des Imagebox, picturebox... à la demande. Je m'explique : dans une FORM_01, j'ai tantôt besoin d'afficher 10 images, 20 images, 1 image, ou 150 images (maximum). Pour cela, je crée donc 150 Imagebox en "visible.false" que je rends visible selon leur utilisation. Mais cela prend beaucoup de place à l'écran et c'est assez lourd à gérer. D'autant plus qu'il y a autant de Label associées à chaque Imagebox !!! Avec une procédiure du type CreateImagebox, ce serait plus simple, mais est-ce possible ?

Cactus TWO :
J'ai empilé plusieurs label, imagebox, picturebox les unes sur les autres et j'ai des problèmes de Layer : je ne sais pas comment gérer leur empilement vertical (Front, back...) Existe t-il quelque chose à ce sujet du style labelbox.layer.

Merci d'avance

El Bouboutch

1 réponse

crenaud76 Messages postés 4172 Date d'inscription mercredi 30 juillet 2003 Statut Membre Dernière intervention 9 juin 2006 28
13 août 2003 à 14:11
Pansement ONE :
Créer dynamiquement tes PictureBox depuis ton code.
1- Créer une PictureBox picImg sur une Form
2- Fixer sa propriété Index à 0 (Tu crées alors un groupe de PictureBox avec 1 seule picturebox dedans)
3- Fixer sa propriété Visible à False (Tu la rends invisible)
4- Dans ton code, qd tu as besoin d'ajouter une PictureBox tu fais ça : Load picImg(lIndex) ou lIndex est une var de type Long qui te donne l'indice de la prochaine PictureBox à créer.
5- Tu fais ensuite ça :
With picImg(lIndex)
.Move xx,yy,ww,hh ' Tu déplaces et dimensionne ta picture
.Visible = True ' Tu la rends visible
End With
lIndex = lIndex + 1 ' Tu prépares l'index pour la prochaine
6- Fait de même pour tes labels (au passage, on ne dit pas LabelBox mais Label tout court)

Pansement TWO :
Tu peux gérer les niveaux des contrôles dans l'IDE (clic droit et "Envoyer au 1er/Dernier plan") mais je ne croit pas qu'il soit possible de coder cela ...

Christophe R.
0
Rejoignez-nous