Un comportamiento típico de la mayoría de las aplicaciones es comenzar en el centro de la pantalla para usar la aplicación inmediatamente. Con la biblioteca WxPython, esto es bastante fácil de lograr. En lugar de recuperar las dimensiones de la pantalla por ti mismo y calcular su posición de acuerdo con el tamaño de tu ventana, etc. WxPython lo hace automáticamente si llamas al método Center desde un Frame:
import wx
# Inicializar una ventana simple
app = wx.App()
frame = wx.Frame(None, title='Simple application')
#Céntrelo con el método 'Centre'
frame.Centre()
# Muestra tus ventanas principales
frame.Show()
app.MainLoop()
Automáticamente, la ventana se centrará en la pantalla independientemente de sus propias dimensiones.
Ejemplo dentro de un contexto de aplicación
Si su aplicación está estructurada, puede hacer que su ventana se extienda a la clase Frame de WxPython:
import wx
class MyApp(wx.Frame):
def __init__(self, parent, title):
super(MyApp, self).__init__(
parent,
title = title,
# Definir el tamaño de la ventana
size=(800, 600)
)
## Importante: llamar al método Center que se centra automáticamente
## la ventana para ti
self.Centre()
def main():
app = wx.App()
ex = MyApp(None, title='Example of Centering a Window')
ex.Show()
app.MainLoop()
if __name__ == '__main__':
main()
Como resultado, su ventana se centrará como se menciona:
Que te diviertas ❤️!
Conviertete en un programador más sociable