Liste mit Scrollbar - Inhalt wird gekürzt?

Fragen zu Tkinter.
Antworten
D4UG
User
Beiträge: 1
Registriert: Mittwoch 19. September 2012, 17:06

Hallo allerseits;
ich bin ganz neu hier und versuche mich seit 4 Wochen an Python.

ich suchte heute nach einem Code, um eine größere Liste bzw. Array in einem window mit Scrollbox darzustellen und bin auf folgendes gestoßen:

Code: Alles auswählen

import Tkinter

s = Tkinter.Scrollbar()
L = Tkinter.Listbox()

s.pack(side=Tkinter.RIGHT, fill=Tkinter.Y)
L.pack(side=Tkinter.LEFT, fill=Tkinter.Y)

s.config(command=L.yview)
L.config(yscrollcommand=s.set)

for i in range(30): 
   L.insert(Tkinter.END, str(i)*3)

Tkinter.mainloop()
Ich füge in die Liste aber nicht Elemente einzeln in Form einer Schleife hinzu, sondern auf einmal eine ganzes Array

Jetzt habe ich das Problem, dass meine Liste irgendwie eingeschrumpft wird.
Es wird angezeigt;
[0]
[1]
[2]
...,
[270]
[271]
[272]
Ich habe aber genau aus dem Grund was mit Scrollbar gesucht, damit man den gesamten Inhalt sehen kann
Hat jemand eine Idee wie ich Tkinter dazu bringe, mein ganzes Array anzuzeigen?
Ich habe es schon mit expand bzw. fill versucht, leider ohne Erfolg.

Gruß
Basti
Nobuddy
User
Beiträge: 994
Registriert: Montag 30. Januar 2012, 16:38

Hallo Basti,
Du brauchst eine for-Schleife, sonst weiß ja die Listbox nicht, was in eine Zeile soll.
Oder soll etwa das ganze Array in eine zeile?

Vielleicht hilft das

Code: Alles auswählen

array = ((11,12,13), (21,22,23), (31,32,33))

for index, row in enumerate(array):
    print(index, row)
Grüße Nobuddy
Antworten