Jak wyświetlić elementy z listy w oknie programu

Odpowiedz Nowy wątek
2018-04-07 18:54

Rejestracja: 2 lata temu

Ostatnio: 2 lata temu

0

Witajcie. Mam program którego zadaniem jest pobieranie z skanera kodów kreskowych kodu i zapisywanie go do listy. Niestety nie wiem jak zawartość listy wyświetlić w kolumnie jeden kod pod drugim. Po każdym zeskanowaniu nowego kodu. Udało mi się wyświetlić listę kodów obok siebie,ale po pewnym czasie jak elementów przybędzie wychodzą poza ekran okna.
Oto mój kod:

root = Tk()
internals = []
def returnEntry(arg=None):
    result = myEntry.get()
        if len(result) >= 5 and len(result) <= 10:
        internals.append(result)
        resultLabel.config(text=result)
        resultLabel2.config(text=internals)
        myEntry.delete(0, END)
myEntry = Entry(root, width=20)
myEntry.focus()
myEntry.bind("<Return>", returnEntry)
myEntry.pack()
resultLabel = Label(root, text="")
resultLabel.pack(fill=X)
resultLabel2 = Label(root, text="")
resultLabel2.pack(fill=X)
root.geometry('{}x{}'.format(300, 300))
root.mainloop()

Może mi ktoś podpowiedzieć jak to zrobić?

Pozostało 580 znaków

2018-05-05 20:58

Rejestracja: 3 lata temu

Ostatnio: 2 miesiące temu

Lokalizacja: Częstochowa

0

Przetestuj taki mini program (odkopany ze stackoverflow):

from tkinter import *
root=Tk()
frame=Frame(root,width=300,height=300)
frame.grid(row=0,column=0)
canvas=Canvas(frame,bg='#FFFFFF',width=300,height=300,scrollregion=(0,0,500,500))
hbar=Scrollbar(frame,orient=HORIZONTAL)
hbar.pack(side=BOTTOM,fill=X)
hbar.config(command=canvas.xview)
vbar=Scrollbar(frame,orient=VERTICAL)
vbar.pack(side=RIGHT,fill=Y)
vbar.config(command=canvas.yview)
canvas.config(width=300,height=300)
canvas.config(xscrollcommand=hbar.set, yscrollcommand=vbar.set)
canvas.pack(side=LEFT,expand=True,fill=BOTH)

root.mainloop()

To powinno odpowiedzieć na twój problem.
Ewentualnie możesz zrobić otwieranie nowego okna podglądu i generować wielkość okna zależnie od długości listy, ale prędzej czy później skończy ci się przestrzeń ekranu, i będziesz musiał zapoznać się z powyższym. Kolejna możliwość to rekonfiguracja geometrii, problem finalnie pojawi się ten sam :d.
Proponuje przyspieszyć proces prób i błędów oraz Od razu zapoznać się canvasem :)


Linux Mint
Arduino / Python 3.5.2
edytowany 1x, ostatnio: Guaz, 2018-05-05 21:01

Pozostało 580 znaków

Odpowiedz

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0