Относительный размер окна
Пишу программку на Python, только начал изучать python. Как сделать так чтобы ОКНО было относительного размера монитора.
Пример: Если у меня монитор 1440х990, а у пользователя 1920х1080 и другие...
from tkinter import *
root = Tk()
root.title('Окно')
root.geometry('1000x680')
root.resizable(width=False, height=False)
root.configure(background='#000000')
root.mainloop()
Ответы (2 шт):
Автор решения: S. Nick
→ Ссылка
Попробуйте так
from tkinter import *
root = Tk()
root.title('Окно')
w = root.winfo_screenwidth() # ширина экрана
h = root.winfo_screenheight() # высота экрана
print(f'w = {w}, h = {h}')
#root.geometry('1000x680')
root.geometry(f'{w}x{h}')
root.resizable(width=False, height=False)
root.configure(background='#000000')
root.mainloop()
Update
а так
root = Tk()
root.title('Окно')
w = root.winfo_screenwidth() # ширина экрана
h = root.winfo_screenheight() # высота экрана
print(f'w = {w}, h = {h}')
w = w//2 # середина экрана
h = h//2
print(f'w = {w}, h = {h}')
w = w - 500 # смещение от середины
h = h - 340
print(f'w = {w}, h = {h}')
#root.geometry('1000x680')
root.geometry('1000x680+{}+{}'.format(w, h))
root.resizable(width=False, height=False)
root.configure(background='#000000')
root.mainloop()
Автор решения: FotonPC
→ Ссылка
Вот так точно должно работать!
from tkinter import *
root = Tk()
root.title('Окно')
w = root.winfo_screenwidth() # ширина экрана
h = root.winfo_screenheight() # высота экрана
print(f'w = {w}, h = {h}')
rw = w - 200
rh = w - 100
w = w//2 - rw//2 # середина экрана
h = h//2 - rh//2
root.geometry('{}x{}+{}+{}'.format(rw, rh,w, h))
root.resizable(width=False, height=False)
root['bg'] = 'black'
root.mainloop()