このコードは、ウィンドウ内に2つのキャンバスを作成します。しかし、Pythonはそれらを互いに張り合わせるのではなく、それらの間にギャップを置きます。このギャップは、ウィンドウのサイズを変更するとさらに大きくなります。2つのキャンバスの間の隙間を避ける方法
from Tkinter import *
class App:
def __init__(self,master):
master.title('Python Canvas Testing')
master.minsize(width=550, height=450)
settingscanvas = Canvas(master,bg="yellow")
settingscanvas.pack(side='top',anchor='nw',expand=True,fill='x')
datacanvas = Canvas(master,bd=1,bg="green")
datacanvas.pack(side='top',anchor='nw',expand=True,fill='both')
for r in xrange(15):
Label(settingscanvas, text='Label'+str(r+1)).grid()
Label(datacanvas, text='Label 2').grid()
## create main program window
window = Tk()
## create window container
app = App(window)
mainloop()
ギャップがないように2つのキャンバスを一緒に貼り付けることができないオプションがありますか?
@ TadhgMcDonald-Jensen: 'pack'と' grid'を混在させることは可能ではありませんが、良い方法です。あなたがそれを行うことができない唯一の時間は、共通の親を共有する2つ以上のウィジェットを使用することです。この場合、ウィジェットには異なる親があります。 –
私はそれらが異なる親ウィジェットにあったことに気付かず、元のコメントを完全に取り消しました。 –