Как я могу установить размер моих виджетов Tkinter в пикселях? - PullRequest
1 голос
/ 20 октября 2019

Каждый раз, когда мне приходится создавать GUI на Python, я всегда обращаюсь к PyQt5 (Qt Designer 5), потому что, на мой взгляд, он проще, чем Tkinter, но теперь у меня есть задание, и использовать Tkinter обязательно.

Графический интерфейс, который я хочу реализовать в Tkinter, таков:

Графический интерфейс в Qt Designer 5

Это часть кодаЯ сделал для дизайна Tkinter GUI:

from tkinter import Tk,Text
from tkinter import ttk

class MiApp(ttk.Frame):
    def __init__(self,main_window):
        super().__init__(main_window)
        self.promDaily = []
        self.datos = {}
        self.csv = " "
        self.botonCSV = ttk.Button(main_window,text="Escoger CSV",width=91,command=self.ChooseCSVFile)
        self.botonCSV.place(x=9,y=16)
        self.pathCSV = ttk.Entry(main_window,width=351,state="disable")
        self.pathCSV.place(x=120,y=17)
        self.labelAbsc = ttk.Label(main_window,text="Abscisa:",width=47)
        self.labelAbsc.place(x=9,y=52)
        self.labelOrden = ttk.Label(main_window,text="Ordenada:",width=55)
        self.labelOrden.place(x=120,y=52)
        self.labelPromD = ttk.Label(main_window,text="Promedio diario:",width=79)
        self.labelPromD.place(x=245,y=52)
        self.comboBAbsc = ttk.Combobox(main_window,width=91)
        self.comboBAbsc.place(x=9,y=78)
        self.comboBOrden = ttk.Combobox(main_window, width=91)
        self.comboBOrden.place(x=120, y=78)
        self.botonCalc = ttk.Button(main_window,text="Calcular",width=75)
        self.botonCalc.place(x=245,y=78)
        self.posibilidadCalc = ttk.Entry(main_window,width=211)
        self.posibilidadCalc.place(x=245,y=114)
        self.botonGraph = ttk.Button(main_window,width=75)
        self.botonGraph.place(x=62,y=201)
        self.textMaxMin = Text(main_window,width=211,height=131)
        self.textMaxMin.place(x=245,y=147)
        (...)
root = Tk()
root.config(width=480,height=337)
mainW = ttk.Frame(root,width=480,height=337)
mainW.pack()
root.resizable(0,0)
app = MiApp(mainW)
app.mainloop()

Теперь мой Tkinter GUI выглядит так:

GUI в Tkinter

Как я могу установить эти значения ширины в пикселях?

Я ценю ваше внимание.

1 Ответ

1 голос
/ 21 октября 2019

Без моего ведома, определение ширины и высоты внутри места () после создания рамки позволяет размещать по пикселям:

    def __init__(self,main_window):
    super().__init__(main_window)
    self.promDaily = []
    self.guidepromDaily = []
    self.datos = {}
    self.csv = " "
    self.minmax = " "
    self.botonCSV = ttk.Button(main_window,text="Escoger CSV",
         command=self.ChooseCSVFile)
    self.botonCSV.place(x=9,y=16,width=91)
    self.pathCSV = ttk.Entry(main_window,state="disable")
    self.pathCSV.place(x=120,y=17,width=351)
    self.labelAbsc = ttk.Label(main_window,text="Abscisa:")
    self.labelAbsc.place(x=9,y=52,width=47)
    self.labelOrden = ttk.Label(main_window,text="Ordenada:")
    self.labelOrden.place(x=120,y=52,width=55)
    self.labelPromD = ttk.Label(main_window,text="Promedio diario:")
    self.labelPromD.place(x=245,y=52,width=95)
    self.comboBAbsc = ttk.Combobox(main_window,state="readonly")
    self.comboBAbsc.place(x=9,y=78,width=91)
    self.comboBOrden = ttk.Combobox(main_window,state="readonly")
    self.comboBOrden.place(x=120, y=78, width=91)
    self.botonCalc = ttk.Button(main_window,text="Calcular", 
        command=self.PromedioDiario)
    self.botonCalc.place(x=245,y=78,width=75)
    self.posibilidadCalc = ttk.Entry(main_window,state="readonly")
    self.posibilidadCalc.place(x=245,y=114,width=211)
    self.botonGraph = ttk.Button(main_window,text="Graficar",
        command=self.GraphCSV)
    self.botonGraph.place(x=62,y=201,width=75)
    self.textMaxMin = Text(main_window,state="disabled")
    self.textMaxMin.place(x=245,y=147, width=211, height=131)

Желаемый дизайн графического интерфейса в Tkinter

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...