Найти - Пользователи
Полная версия: tk сделать чтобы размер виджета менялся вместе с окном системы
Начало » GUI » tk сделать чтобы размер виджета менялся вместе с окном системы
1
qasef
создал форму
при изменении размеров окна, текстбокс который внутри не меняет размеры, как сделать чтобы был всё время по размеру родительского окна?

https://ibb.co/cHZgPG

 import tkinter as tk
class Application(tk.Frame):
    def __init__(self, master=None):
        tk.Frame.__init__(self, master)
        self.pack()
        self.createWidgets()
    def createWidgets(self):
        panelFrame = tk.Frame(self, height=60, bg='gray')
        textFrame = tk.Frame(self, height=340, width=600)
        panelFrame.pack(side='top', fill='x', expand=True)
        textFrame.pack(side='bottom', fill='both', expand=True)
        textbox = tk.Text(textFrame, font='Arial 14', wrap='word')
        scrollbar = tk.Scrollbar(textFrame)
        scrollbar['command'] = textbox.yview
        textbox['yscrollcommand'] = scrollbar.set
        textbox.pack(side='left', fill='both', expand=True)
        scrollbar.pack(side='right', fill='y')
        self.saveBtn = tk.Button(self)
        self.saveBtn["text"] = "Сохранить в файл XML"
        self.saveBtn["command"] = self.say_hi
        self.saveBtn.pack(side="top")
        self.saveBtn.place(x=10, y=10, width=140, height=40)
        self.QUIT = tk.Button(self, text="ВЫХОД", fg="red",
                              command=root.destroy)
        self.QUIT.place(x=155, y=10, width=60, height=40)
root = tk.Tk()
app = Application(master=root)
app.mainloop()
rami
Вот так (кнопки внизу справа):
 from tkinter import Tk,Frame,PanedWindow,Text,Scrollbar,Button
class Application(Frame):
    def __init__(self, master=None):
        Frame.__init__(self, master)
        self.createWidgets()
    def createWidgets(self):
        frame=Frame()
        frame.pack(fill='both',expand=True)
        pw=PanedWindow(frame,bg='#0f0',sashwidth=1)  #панель инструментов (зелёная только для видимости)
        pw.pack(side='bottom',fill='x')
        QUIT=Button(pw,text='ВЫХОД',fg='red',command=root.destroy)
        QUIT.pack(side='right')
        saveBtn=Button(pw,text='Сохранить в файл XML',command=self.foo)
        saveBtn.pack(side='right')
        textbox=Text(frame, font='Arial 14', wrap='word')
        scrollbar=Scrollbar(frame)
        scrollbar['command'] = textbox.yview
        textbox['yscrollcommand'] = scrollbar.set
        textbox.pack(side='left', fill='both', expand=True)
        scrollbar.pack(side='right', fill='y')
        frame.grid_columnconfigure(0,weight=1)  #привязывает ширину фрейма к размеру окна
        frame.grid_rowconfigure(0,weight=1)  #привязывает высоту фрейма к размеру окна
    def foo(self):
        pass
root=Tk()
app=Application(master=root)
app.mainloop()
qasef
спасибо, получилось
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB