47 Stimmen

Wie kann ich die Bildschirmgröße in Tkinter ermitteln?

Ich würde gerne wissen, ob es möglich ist, die Bildschirmgröße mit Tkinter zu berechnen.

Ich wollte dies, damit sich das Programm in der Mitte des Bildschirms öffnen kann...

110voto

mouad Punkte 63071
import tkinter as tk

root = tk.Tk()

screen_width = root.winfo_screenwidth()
screen_height = root.winfo_screenheight()

8voto

VoteCoffee Punkte 3834

Für Windows:

Sie können den Prozess auf Folgendes aufmerksam machen DPI um skalierte Anzeigen zu handhaben.

import ctypes
try: # Windows 8.1 and later
    ctypes.windll.shcore.SetProcessDpiAwareness(2)
except Exception as e:
    pass
try: # Before Windows 8.1
    ctypes.windll.user32.SetProcessDPIAware()
except: # Windows 8 or before
    pass

Ausweitung der mouad's Antwort Diese Funktion kann mit mehreren Bildschirmen umgehen und liefert die Auflösung des aktuellen Bildschirms:

import tkinter
def get_display_size():
    root = tkinter.Tk()
    root.update_idletasks()
    root.attributes('-fullscreen', True)
    root.state('iconic')
    height = root.winfo_screenheight()
    width = root.winfo_screenwidth()
    root.destroy()
    return height, width

6voto

Nandit Tiku Punkte 563

Eine mögliche Lösung

import os

os.system("xrandr  | grep \* | cut -d' ' -f4")

Mein Ergebnis:

1440x900
0

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X