フレーム内に複数のウィジェットがある場合、すべてのウィジェットの位置を一度にコマンドでシフトする方法はありますか? .place managerを使用しています。ありがとう!Tkinter Python:一度に複数のウィジェットを移動する
0
A
答えて
1
私は、変数ref_y
とref_y
を定義して、ちょうどのように私の現在のx
とy
値にそれらを追加します。
import tkinter as tk
root = tk.Tk()
ref_x = 40
ref_y = 56
btn = tk.Button(root, text="Button")
lbl = tk.Label(root, text="Label")
btn.place(x=ref_x + 45, y=ref_y + 13)
lbl.place(x=ref_x + 13, y=ref_y + 44)
root.mainloop()
上記の例btn
とlbl
でref_x
とref_y
にrefereceに配置されます。つまり、ウィジェットを相対位置を変えずに配置する場合は、ref_x
とref_y
の値を変更するだけです。
0
Frame
にすべて入っている場合は、Frame
に移動して、すべての要素を内側に移動します。
place_forget()
を使用してウィンドウから削除し、もう一度place()
を使用して新しい位置に配置します。
import tkinter as tk
import random
# --- funtions ---
def move():
# hide frame
f.place_forget()
# random positiom
new_x = random.randint(0, 100)
new_y = random.randint(0, 150)
# show in new place
f.place(x=new_x, y=new_y)
# --- main ---
root = tk.Tk()
f = tk.Frame(root)
f.place(x=0, y=0)
tk.Label(f, text='HELLO!').pack()
tk.Button(f, text='Move it', command=move).pack()
root.mainloop()
関連する問題
- 1. SpriteKitで一度に複数のノードを移動する
- 2. Python Tkinter Textウィジェットへのログ
- 3. Pythonは一度に複数のWebページにアクセスします
- 4. 一つのウィジェット・クラスと複数のウィジェット
- 5. Python TKinter複数の操作
- 6. PythonのTkinterのウィジェットでTcl/Tkバインド関数を使うには?
- 7. 形状を自動的に移動しますか? Python 3.5 Tkinter
- 8. PythonでTkinterを使ってウィジェットを一緒にする方法は?
- 9. tkinter - 形を移動する
- 10. 単一のウィジェットにバインドされた複数の関数
- 11. 複数のカメを同時にPythonで移動するには?
- 12. キャンバスに複数のウィジェットを自動スクロールする
- 13. 一度に複数のAndroidエミュレータを起動する
- 14. 一度に複数の動画をストリーミングする
- 15. numpy pythonは複数の列を一度にフィルタリングします。
- 16. 複数のリストを一度に追加できますか? (Python)
- 17. Python - PyQtウィジェットにTkinterグラフを追加する
- 18. Tkinter Python - Comboxbox条件に基づいてウィジェットを削除する
- 19. グリッド付きPython Tkinterウィジェット間の自動空白を削除する
- 20. Tkinterの動的なウィジェットここ
- 21. Python 2.7 - .pack()を使用してTkinterフレームのウィジェットをセンタリングする
- 22. Tkinterウィジェットがスタックになる
- 23. 複数の関数キーワードを一度にPython 2で設定する方法は?
- 24. Tkinterで複数のウィジェットをバインドする方法を教えてください。
- 25. TkInter(Python)のウィジェット間でデータを転送する方法
- 26. 複数のUILabelsを一度に隠す
- 27. Tkinter Canvas:移動オブジェクトのスケール
- 28. Tkinterのウィジェットのルーピング
- 29. 複数のファイルを複数のディレクトリに移動する
- 30. Python tkinterパスワード強度チェッカーgui
すべての要素を一度に「フレーム」に移動することも、すべての要素を別々に移動することもできます。 'frame'(または全ての要素)を' place_forget() 'で取り除き、' place() 'で再配置してください。 – furas
あなたが達成しようとしていることについてもう少し説明することをお勧めします。あなたがグループとしてウィジェットの束を動かす必要があると感じるなら、おそらく 'place 'を使うよりも良い解決策があります。 –