#python #tkinter #tkinter-canvas
Вопрос:
Это снова я. Я хочу сделать свое окно отзывчивым и завершил поиск. Везде был один и тот же ответ grid_columnconfigure(1,weight=1)
. Но в моем случае это не работает, пожалуйста, помогите!
Это код, который я использую [Отредактировано]
from tkinter import Tk, Canvas, Entry, Text, Button, PhotoImage
from tkinter import font
from build import main
OUTPUT_PATH = Path(__file__).parent
ASSETS_PATH = OUTPUT_PATH / Path("./assets")
def relative_to_assets(path: str) -> Path:
return ASSETS_PATH / Path(path)
window = Tk()
window.geometry("1440x1024")
window.configure(bg = "#FFFFFF")
canvas = Canvas(
window,
bg = "#FFFFFF",
height = 1024,
width = 1440,
bd = 0,
highlightthickness = 0,
relief = "ridge"
)
canvas.place(x = 0, y = 0,relwidth=1, relheight=1)
subtext = canvas.create_text(
343.0,
179.0,
anchor="nw",
text="What made you here?",
fill="#000000",
font=("Roboto Condensed", 89 * -1),
)
И я хочу, чтобы текст и другие виджеты были в размере при изменении размера окна, я не знаю, как объяснить. Это так же, как в проводнике файлов при изменении размера. Надеюсь, ты это поймешь 😊
На данный момент это выглядит так при изменении размера — Пожалуйста, помогите, извините за плохой английский и заранее спасибо.
Комментарии:
1.
grid_rowconfigure()
применяется при использовании виджетовgrid()
, но вы используетеplace()
canvas()
их .2. Ой, но для чего используется
place()
3. Воспользуйся
canvas.place(x=0, y=0, relwidth=1, relheight=1)
.4. Не работает, есть какие-нибудь альтернативы?
5. Используйте
window.state('zoomed')
вместоwindow.geometry(...)
.