Ma scrollbar fonctionne mais pas avec les flèches

fabientoupeti Messages postés 9 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 14 juin 2007 - 14 juin 2007 à 12:01
fabientoupeti Messages postés 9 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 14 juin 2007 - 14 juin 2007 à 14:17
bonjour,
 
j'ai un petit soucis avec une scrollbar dans un formulaire.
 
j'ai un formulaire avec des contrôles créés en dynamique sur ce formulaire j'ai ajouté une scrollbar. 
 
mon probleme est que quand j'utilise les fleches de la scrollbar seul la barre de la scrollbar se déplace mais tout mes textbox dans ma userform restent immobile.Par contre quand je clique directement sur la barre et que je la deplace les textbox se deplacent parfaitement. 
 
quelqu'un sait-il d'où cela vient?
 
faut il que je mette tous mes controles dans une frame avec la scrollbar directement dans la frame?
 
faut il que j'utilise la scrollbar de ma userform sans en rajouter une nouvelle?

Merci d'avance pour vos réponses.
 
Fabientoupeti

10 réponses

Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
14 juin 2007 à 12:06
t'es en VBA ?.

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
fabientoupeti Messages postés 9 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 14 juin 2007
14 juin 2007 à 12:09
non en VB6.
En fait j'utilise VB6 pour créer des macros avec CATIA (logiciel de modélisation mécanique).
0
ciberrique Messages postés 589 Date d'inscription lundi 25 août 2003 Statut Membre Dernière intervention 18 juillet 2010 1
14 juin 2007 à 12:13
Dans quel événement tu modifies les positions de tes text box par rapport aux scroll bar ?
Verifie si l'evenement cliquer sur le scroll bar est le meme que celui de deplacer avec les flèches.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
14 juin 2007 à 12:17
le fait de poser un scrollbar sur un form ne va  pas deplacer les controles en fonction de ce que tu fais avec ton scrollbar....

http://www.vbfrance.com/codes/OCX-CONTAINER-SCROLLABLE_18285.aspx

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fabientoupeti Messages postés 9 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 14 juin 2007
14 juin 2007 à 13:21
merci a vous pour vos reponses.

reponse pour ciberrique:


je suis un petit nouveau dans le monde du vb, donc je ne suis pas sûre de bien repondre a ta question.


pour moi evenement c 'est Private Sub...


je modifie les positions de mes textbox dan l'évènement:
Private Sub ScrollBar1_Scroll()
pour exemple je pose ce que j'ai ecrit pour que mes textbox se bougent avec la scrollbar:

Private Sub ScrollBar1_Scroll()
Dim i As Integer


For i = 1 To cantidad
    For Each capa In definicion_mano.Controls
    If capa.Name = "capa" & i - 1 Then
    capa.Top = captop(i - 1) - ScrollBar1.Value
    End If
    'If capa.Top <= 18 Then
    'capa.Visible = False
    'End If
    Next capa
Next i

Pour Renfield, j'ai essayé d'utiliser ce que tu m'avais filé avec le lien mais quand je tente d'importer le .frm il me dit que la classe selectionné n'est pas compatible avec VBE??
c'est quoi VBE?
et pour etre franc je n'ai pas bien compris ta remarque, désolé.

merci encore pour vos aides
a+
fabientoupeti
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
14 juin 2007 à 13:36
pas possible que tu découpe ton ecran en placant plutot des onglets, en ce cas ? (plus standard, en plus)

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
ciberrique Messages postés 589 Date d'inscription lundi 25 août 2003 Statut Membre Dernière intervention 18 juillet 2010 1
14 juin 2007 à 13:59
Je vois pas d'erreur dans ton code, essaye de verifier les differentes valeurs de scroll.value selon que tu cliques sur la fleche ou sur le scroll.
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 71
14 juin 2007 à 14:04
quoi ce   captop(i - 1)     dans ton code ?

Renfield
Admin CodeS-SourceS- MVP Visual Basic
0
fabientoupeti Messages postés 9 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 14 juin 2007
14 juin 2007 à 14:12
le truc c'est qu'en fait je crée mes label et texbox en dynamique parce que je ne sais pas a priori combien je vais avoir de lignes à remplir dans ma userform.

pour que tu comprennes mieux où je veux venir je vais t'expliquer comment se passe mon prog.

je lance mon prog la userform apparait.
je remplis une premiere textbox, elle, créée avec l'outil pour dire combien je veux de lignes dasn ma userform (normalement, pour mon application on pourrait demander plus ou moins de créer 200lignes).
sur chaque ligne il y a un label et 4 textbox.
ma fenetre est dimensionné de telle maniere que pour moins de 25 lignes la scrollbar n'apparaisse. pour plus elle apparait et le besoin de se déplacer se fait sentir pour pouvoir remplir toutes les textbox de toutes lignes.

le problème que je vais avoir avec les onglets va etre dans la lourdeur du remplissage si à chaque fois il faut cliquer à un endroit...ca risque d'être plus chiant que ça ne l'est en ce moment...

merci pour vos aides
a+

fabientoupeti 
0
fabientoupeti Messages postés 9 Date d'inscription mercredi 21 mars 2007 Statut Membre Dernière intervention 14 juin 2007
14 juin 2007 à 14:17
nos messages se sont croisés!

le captop(i-1) vient du fait que j'ai créé mes textbox ou label en dynamique et donc il me fallait recuperer la valeur top de chaque label et textbox
captop est une liste ca me permet de créer plus facilement des boucles pour bouger chaque ligne de ma userform.

For i = 1 To cantidad
    For Each capa In definicion_mano.Controls
    If capa.Name = "capa" & i - 1 Then
    captop(i - 1) = capa.Top
    End If
    Next capa
Next i
0