J'aimerais savoir s'il existe une fonction qui consiste à déplacer une scrollbar quand une textbox qui a le focu dépasse les limites visuel de la form.
Version imprimable
J'aimerais savoir s'il existe une fonction qui consiste à déplacer une scrollbar quand une textbox qui a le focu dépasse les limites visuel de la form.
Ajuste la valeur de ta scrollbar dans l'événement GotFocus de ton TextBox.
c'est ce que j'ai essayer de faire mais ca ne marche pas comme je veux. un exemple serais le bien venu.
Montre nous ton code qui ne marche pas.
Mais moi je n'utilise pas la fonction gotfocus mais keyup
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 Private Sub he_ahs_a_KeyUp(index As Integer, KeyCode As Integer, Shift As Integer) If KeyCode = 38 Then he_ahs_a(index - 1).SetFocus If vscroll1.Min > (vscroll1.Value - 90) Then vscroll1.Value = vscroll1.Min Else vscroll1.Value = vscroll1.Value - 90 End If Else If KeyCode = 40 Then If index = (he_ahs_a.Count) Then Exit Sub End If If vscroll1.Max < (vscroll1.Value + 90) Then vscroll1.Value = vscroll1.Min Else vscroll1.Value = vscroll1.Value + 90 End If he_ahs_a(index + 1).SetFocus End If End If End Sub
le problème qu'il y a c'est que quand l'utilisateur clique sur un textbox qui dépasse les limites visuelles de ma form, ma scrollbar ne bouge pas et je ne vois pas du tout comment il faut que j'addapte mon code par rapport au gotfocus.
Désolé, mais je ne comprends pas trop, si l'utilisateur peut cliquer sur la textBox c'est qu'elle est visible ? Si c'est uniquement le bas de la TextBox qui n'est pas visible, il suffit donc de changer la valeur de ta scrollbar sur l'événement GotFocus de ta TextBox.
excuse moi je me suis mal expliquer, c'est quand ma textbox n'est pas visible entièrement. mais sinon je suis d'accord avec toi au point de vu qu'il faut que j'utilise le gotfocus mais je ne sais pas du tout quelle valeur je dois passer à ma scrollbar au niveau de la propriété value.
J'ai essayé ce code là mais ca ne marche pas, je n esais vraiment plus comment faire.
Code:
1
2
3
4
5
6
7
8
9 Private Sub he_ahs_ma_GotFocus(Index As Integer) If (he_ahs_ma(Index).Top + Picture4.ScaleHeight) >= Picture2.ScaleHeight Then ahs_scroll.Value(efsVertical) = (he_ahs_ma(Index).Top + Picture4.ScaleHeight) - Picture2.ScaleHeight End If End Sub