リストボックスのサイズが互いに異なるウィンドウがあります。私はグリッドを使っています。リストボックスの下には、現在ウィンドウを移動してサイズを変更している行があります。ウィンドウとリストボックスのサイズが変更されている間はボタンを一定のままにしておきたい(ボタンは常にリストボックスの左下隅に残る)。Tkinter/Python - ウィンドウのサイズが変更されたときにボタンのサイズ変更を無効にする
これを行う簡単な方法はありますか?私はちょうど今日Tkinterを使い始めたので、ドキュメントでそれを見逃したり、グリッドレイアウトを混乱させたりするかもしれません。次のように
ボタンが設定されています
nextbutton = Button(self, width = 30, height = 30, image = ffbtn)
nextbutton.image = ffbtn
nextbutton.bind("<Button-1>", self.forward)
nextbutton.grid(row = 10, column=4, sticky='w')
私はすべてのスティッキの組み合わせが、それでも、私はしたくないこれ、彼らが周りに移動することができ、ボタンのサイズを変更していないものを試してみました。
編集:Heresは私が話していることの非常に基本的な例です。ウィンドウのサイズが変更されると、ボタンは互いに離れて移動します。私はそれを望んでいない。
横書きでは、すべてのスペースを占める列/行スパンで1つの列または行を使用しても、最後にすべてのグリッド構成が必要ですか?グリッド内のすべての行と列に非ゼロの重みを与えることによって
import tkinter
from tkinter import *
from tkinter import ttk
class Application(tkinter.Tk):
def __init__(self, parent):
tkinter.Tk.__init__(self, parent)
self.minsize(300,300)
self.parent = parent
self.main()
def main(self):
self.grid()
listbox = tkinter.Listbox(self, width=20, height=25, bg = 'grey')
listbox.grid(padx=30, pady=30, columnspan=11, sticky='NEW')
bt1 = Button(self, width = 5, height = 5)
bt1.grid(row=10, column=0, padx=(30,0), sticky='w')
bt2 = Button(self, width = 5, height = 5)
bt2.grid(row = 10, column=1, sticky='w')
bt3 = Button(self, width = 5, height = 5)
bt3.grid(row = 10, column=2, sticky='w')
bt4 = Button(self, width = 5, height = 5)
bt4.grid(row = 10, column=3, sticky='w')
bt5 = Button(self, width = 5, height = 5)
bt5.grid(row = 10, column=4, sticky='w')
self.grid_columnconfigure(0,weight=1)
self.grid_columnconfigure(1,weight=1)
self.grid_columnconfigure(2,weight=1)
self.grid_columnconfigure(3,weight=1)
self.grid_columnconfigure(4,weight=1)
self.grid_columnconfigure(5,weight=1)
self.grid_columnconfigure(6,weight=1)
self.grid_columnconfigure(7,weight=1)
self.grid_columnconfigure(8,weight=1)
self.grid_columnconfigure(9,weight=1)
self.grid_columnconfigure(10,weight=1)
self.grid_rowconfigure(0,weight=1)
self.grid_rowconfigure(1,weight=1)
self.grid_rowconfigure(2,weight=1)
self.grid_rowconfigure(3,weight=1)
self.grid_rowconfigure(4,weight=1)
self.grid_rowconfigure(5,weight=1)
self.grid_rowconfigure(6,weight=1)
self.grid_rowconfigure(7,weight=1)
self.grid_rowconfigure(8,weight=1)
self.grid_rowconfigure(9,weight=1)
self.grid_rowconfigure(10,weight=1)
app = Application(None)
app.mainloop()
[mcve] –
を作成してください^元の投稿に追加しました – mxvx