так что у меня пока есть это рабочее приложение:
import tkinter as tk
class AppGui(tk.Tk):
def __init__(self, *args, **kwargs):
tk.Tk.__init__(self, *args, **kwargs)
# Set window size
self.geometry("400x600")
# Create main container frame
self.cframe = tk.Frame(self,
bg = "yellow",
width = 400,
height = 600
)
self.cframe.place(x=0,y=0)
# Draw the first page and move on
self.Draw()
def Draw(self):
# Create top bar and label
topbar = tk.Frame(self.cframe,bg="green",width=400,height=60)
topbar.place(x=0,y=0)
l = tk.Label(topbar,
text = "TOP Title",
bg = "red"
)
l.place(x=200,y=30,anchor="center")
# Create center container
centerpanel = tk.Frame(self.cframe,bg="orange",width=400,height=480)
centerpanel.place(x=0,y=60)
# Create a one-pixel image
pixel = tk.PhotoImage(width=1, height=1)
# Create program select button group
b_left = tk.Button(centerpanel,
text = "Left",
image = pixel, # This allows me to specify width in pixels.
width = 75,
height = 50,
compound = "c"
)
b_left.place(x=25,y=30)
b_center = tk.Button(centerpanel,
text = "Center",
image = pixel, # This allows me to specify width in pixels.
width = 75,
height = 50,
compound = "c"
)
b_center.place(x=150,y=30)
b_right = tk.Button(centerpanel,
text = "Right",
image = pixel, # This allows me to specify width in pixels.
width = 75,
height = 50,
compound = "c"
)
b_right.place(x=275,y=30)
if __name__ == "__main__":
gui = AppGui()
gui.mainloop()
В основном я хотел получить верхнюю панель с меткой, центральную панель с тремя кнопками рядом (с некоторыми отступами) инижняя полоса, которую я еще не реализовал.
Я сделал каждый компонент разным цветом, и с этим у меня есть то, что мне нужно, чтобы двигаться.
Хаубер, чтобы заставить это работатьпришлось установить для всех кнопок width свойство равным 75 пикселям, чтобы они отображались в виде кнопок шириной 100 пикселей (измерено с помощью screenruler).
Этот графический интерфейс будет работать только нафиксированное оборудование, поэтому я хотел бы продолжать использовать менеджер place , чтобы по возможности размещать элементы в окне.
Итак, чтобы подвести итог: почему мои кнопки на 25 пикселей ширечем ширина, которую я им установил?
Использование Python 3 в Ubuntu 18.04 в случае, если это важно.
Спасибо