Bonjour à tous
comment faire pour qu'une scrollbar reste toujours das la position la plus bas possible?
Merci
+
Bonjour à tous
comment faire pour qu'une scrollbar reste toujours das la position la plus bas possible?
Merci
+
Ne pas la faire monter![]()
non serieusenemt, l'ideal serait que tu nous dise quel lib GUI utilise tu : Tkinter, wxWidget, pyQt ...
Deusiement cela me semble un probleme de layout, reseigne toi donc grace a la doc de ta lib, et que google soit avec toi (si ta lib est Tkinter, tu peu commancer par faire une recherche avec "tkinter" et "layout").
je ture sous Tkinter , le scrollbar est rtaché à un text auquel le text est ajouté par une fonction.
lorsque le nombre de ligne depasse la surface affiché, le scroll s'active mais celuici reste "en bas", il fait que la partie du ~text~ afficher est toujours le debut alors que moi je souhaite voir la fin.
voila
Tu as dit dans ce post :Envoyé par Guigui_
Code Guigui_ : Sélectionner tout - Visualiser dans une fenêtre à part texte.yview(END) ## pour aller à la fin du widget texte
j'avais deja vu ce post dans une precedante recherche mais sa nefonctionne pas , je n'ai aucune erreur mais on vois toujours a premiere ligne :s
Encore faut-il l'utiliser convenablement
Voilà un exemple qui marche parfaitement:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 # -*- coding: cp1252 -*- import Tkinter as Tk root = Tk.Tk() ## Déclaration des différents widgets f1 = Tk.Frame(root) s1 = Tk.Scrollbar(f1, orient=Tk.VERTICAL) s2 = Tk.Scrollbar(f1, orient=Tk.HORIZONTAL) t1 = Tk.Text(f1, wrap=Tk.NONE) ## association du déplacement de la glissière des scrollbar avec la position visible dans ## le widget Text et inversement. s1.config(command = t1.yview) s2.config(command = t1.xview) t1.config(yscrollcommand = s1.set, xscrollcommand = s2.set) ## Placement du widget Text et des Scrollbar associés t1.grid(column=0, row=0) s1.grid(column=1, row=0, sticky=Tk.S+Tk.N) s2.grid(column=0, row=1, sticky=Tk.W+Tk.E) f1.pack() def affiche(): for i in range(100): t1.insert(Tk.END, str(i)+'\n') t1.yview(Tk.END) btn = Tk.Button(root, text='toto', command=affiche) btn.pack() root.mainloop()
ok il faut rappeller la fonction a chaque foie que l'on remet du texte dans le champ
Merci bien guigui
++
Partager