簡體   English   中英

Tkinter小部件放置不正確

[英]Tkinter widgets placed incorrectly

我想創建一個框架

  • 組合框
  • 然后兩個標簽
  • 然后是另一個組合框。

相反,我得到一個框架

  • 兩個組合框
  • 然后是兩個標簽

Tkinter小部件似乎按小部件類型分組。 請告知如何正確放置小部件。 謝謝!

我在Win 7 64位和Tcl / Tk版本8.6上使用Python 3.4。

import tkinter as tk
from tkinter import ttk

class App(tk.Frame):
    def __init__(self,master=None):
        super().__init__(master)
        self.grid()

        self.combo1=ttk.Combobox(self)
        self.combo1["values"]=["1","2"]
        self.combo1.grid(row=1)

        self.lbl1=ttk.Label(text="AAA")
        self.lbl1.grid(row=2)

        self.lbl3=ttk.Label(text="BBB")
        self.lbl3.grid(row=3)

        self.combo2=ttk.Combobox(self)
        self.combo2["values"]=["3","4"]
        self.combo2.grid(row=4)

root=tk.Tk()
x=App()

布局不正確

發生這種情況是因為您沒有將Labels的父級設置為self (框架),請嘗試將標簽更改為:

self.lbl1=ttk.Label(self, text="AAA")
...

self.lbl3=ttk.Label(self, text="BBB")

以前,他們使用默認的父級,即root ,因此它們顯示在您的框架下方。

暫無
暫無

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

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