spamito
Messages postés183Date d'inscriptionsamedi 24 mars 2007StatutMembreDernière intervention30 mars 2013
-
5 juil. 2008 à 16:18
spamito
Messages postés183Date d'inscriptionsamedi 24 mars 2007StatutMembreDernière intervention30 mars 2013
-
5 juil. 2008 à 19:10
Salut,
C'est la deuxième fois que je poste le même sujet. J'ai réalisé un groupement des label, images et checkbox, qui s'afficheront par rapport au nombre des ordinateurs dans une salle. C'est-à-dire, si une salle posséde 4 ordinateurs alors 4 labels + 4 checkbox + 4 images s'afficheront.
Avec mon code ça marche pour Images, mais je n'arrive pas à le faire avec les labels et les checkbox, sauf si je répéte le même code. Ben !! Voici mon code :
Private Sub Combo1_Click()
Set cn = New Connection
cn.Open "File name=" & App.Path & "\connect.udl"
s = "SELECT * FROM Salles WHERE Salles.nomsalle='" + Combo1 + "';"
Set rs = New Recordset
rs.Open s, cn, adOpenDynamic, adLockOptimistic
Dim ctrl As Control
Dim cmpt As Byte
Dim i As Byte
For Each ctrl In Me.Controls
If TypeOf ctrl Is Image Or Label Then
ctrl.Visible = False
End If
Next
cmpt = 0
For Each ctrl In Me.Controls
If (TypeOf ctrl Is Image) And (cmpt < rs.Fields(2)) Then
ctrl.Visible = True
cmpt = cmpt + 1
End If
Next
End Sub
Puis le compteur commence à partir du dernier composant indexé, je veux faire le contraire.
de plus dans ton cas tu devrais par un usercontrol contenant tes éléments à dupliquer, çà serait beaucoup plus propre
<hr size="2" width="100%" />Prenez un instant pour répondre à [infomsg_SONDAGE-POP3-POUR-CS_769706.aspx ce sondage] svp
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 5 juil. 2008 à 16:38
Salut
Si tu n'as pas eu le réponse la première fois, c'est quet-être que tes explications ne sont pas claires - je confirme.
Dans ton code, tu recherches les Images présentes sur ta forme et tu rends visible selon certains critères.
Cela signifie que tu as créé à l'avance autant d'images qu'il t'en faudra.
Pourquoi ne pas avoir créé une Image de base avec un Index à 0 et que, ensuite, tu charges une copie de cette image en fonction de tes besoins ?
Exemple :
Tu as créé une Image1 avec l'Index à 0
Tu veux créer une nouvelle image identique à la première
Load Image1(1)
Image1(1).Visible = True
Image1(1).Move ...
Utilise Image1.Count pour connaitre le nombre d'objets afin de déterminer quelle valeur utiliser pour le prochain index
Quand tu veux la supprimer :
Unload Image1(1)
De plus, ta syntaxe n'est pas correcte :
If TypeOf ctrl Is Image Or Label Then
Il faut répéter la consition en entier :
If TypeOf ctrl Is Image Or TypeOf ctrl Is Label Then
Vala
Jack, =fr MVP VB NB : Je ne répondrai pas aux messages privés
<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)