簡體   English   中英

Python Tkinter GUI無法正確顯示

[英]Python tkinter GUI not showing properly

我的GUI程序存在一些問題,滾動條位於底部最后一幀的右側,我已經嘗試了很多方法,但沒有任何解決方案可以解決我的問題,我只想將滾動條放在底部所有的幀。

這是代碼

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#spyder
from Tkinter import *
import tkFileDialog



def curdir():
    cdir = tkFileDialog.askdirectory(parent=finestra, initialdir="/home")  
    v.set(cdir)

#MAIN
finestra = Tk()
finestra.title("Creacio de fitxer comprimit")
f=Frame(finestra)

b=Button(f,text='Escollir directori treball',command=curdir)
b.pack(side=LEFT)

v=StringVar() 
v.set("/home")
e1=Entry(f,width=35,textvariable=v)

e1.pack(side=LEFT)

l1=Label(f,text="Fitxers a incorporar al fitxer tar:")
l1.pack(side=TOP,anchor=N,padx=90)
f.pack(side=TOP)

f1=Frame(finestra)
f1.pack(side=LEFT,anchor=NW)

l2=Label(f1,text="Llista:")
l2.pack(side=LEFT)

br=Button(f1,text='Reomplir')
br.pack(side=LEFT)
bo=Button(f1,text='Ocultar no seleccionats')
bo.pack(side=LEFT)
bos=Button(f1,text='Ocultar seleccionats')
bos.pack(side=LEFT)

Label(f1,text="\t\tCompresió").pack(side=LEFT)
rb1=Radiobutton(f1,text="cap").pack(side=LEFT)
rb2=Radiobutton(f1,text="gzip",value="gzip").pack(side=LEFT)
rb3=Radiobutton(f1,text="bzip2",value="bzip2").pack(side=LEFT)
rb4=Radiobutton(f1,text="xz",value="xz").pack(side=LEFT)

f2=Frame(finestra)
f2.pack(side=RIGHT,fill="both")

scrollbar = Scrollbar(f2)
scrollbar.pack(side=RIGHT, fill=Y)

listbox = Listbox(f2, bd=0, yscrollcommand=scrollbar.set)
listbox.pack(side=LEFT)

scrollbar.config(command=listbox.yview)






mainloop( )

最后可以將第f幀的第一個選項更改為TOP,似乎當您將某些東西放在TOP上時,其余的事情都會落在那上面,那是我不了解的,我讓最終的代碼也許有人會Tkinter框架位置同樣的問題。

#!/usr/bin/env python
# -*- coding: utf-8 -*-
#spyder
from Tkinter import *
import tkFileDialog



def curdir():
    cdir = tkFileDialog.askdirectory(parent=finestra, initialdir="/home")  
    v.set(cdir)

#MAIN
finestra = Tk()
finestra.title("Creacio de fitxer comprimit")
f=Frame(finestra)
f.pack(side=TOP)

b=Button(f,text='Escollir directori treball',command=curdir)
b.pack(side=LEFT,anchor=W)

v=StringVar() 
v.set("/home")
e1=Entry(f,width=35,textvariable=v)

e1.pack(side=LEFT)

l1=Label(f,text="Fitxers a incorporar al fitxer tar:")
l1.pack(side=TOP,anchor=N,padx=90)


f1=Frame(finestra)
f1.pack(side=TOP,anchor=NW)

l2=Label(f1,text="Llista:")
l2.pack(side=LEFT)

br=Button(f1,text='Reomplir')
br.pack(side=LEFT)
bo=Button(f1,text='Ocultar no seleccionats')
bo.pack(side=LEFT)
bos=Button(f1,text='Ocultar seleccionats')
bos.pack(side=LEFT)

Label(f1,text="\t\tCompresió").pack(side=LEFT)
rb1=Radiobutton(f1,text="cap").pack(side=LEFT)
rb2=Radiobutton(f1,text="gzip",value="gzip").pack(side=LEFT)
rb3=Radiobutton(f1,text="bzip2",value="bzip2").pack(side=LEFT)
rb4=Radiobutton(f1,text="xz",value="xz").pack(side=LEFT)



f2=Frame(finestra)
f2.pack(side=LEFT,anchor=W)
f3=Frame(finestra)
f3.pack(side=LEFT)



Label(f3,text="Tots:").pack(side=TOP)
tots=Button(f3,text=">>>").pack(side=TOP)
Label(f3,text="Als seleccionats:").pack(side=TOP)
af=Button(f3,text="-->").pack(side=TOP)
qt=Button(f3,text="<--").pack(side=TOP)
Label(f3,text="Tots:").pack(side=TOP)
cap=Button(f3,text="<<<").pack(side=TOP)




scrollbar = Scrollbar(f2)
scrollbar.pack(side=RIGHT, fill=Y)

listbox = Listbox(f2, bd=0, yscrollcommand=scrollbar.set,width=55)
listbox.pack(side=LEFT)

scrollbar.config(command=listbox.yview)




mainloop( )

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM