Função para Abrir uma Interface do tkinter no Centro da Tela em Python
Publicado por Mauricio Ferrari em 07/10/2021
[ Hits: 11.714 ]
Blog: https://www.youtube.com/@LinuxDicasPro
def center(win):
# :param win: the main window or Toplevel window to center
# Apparently a common hack to get the window size. Temporarily hide the
# window to avoid update_idletasks() drawing the window in the wrong
# position.
win.update_idletasks() # Update "requested size" from geometry manager
# define window dimensions width and height
width = win.winfo_width()
frm_width = win.winfo_rootx() - win.winfo_x()
win_width = width + 2 * frm_width
height = win.winfo_height()
titlebar_height = win.winfo_rooty() - win.winfo_y()
win_height = height + titlebar_height + frm_width
# Get the window position from the top dynamically as well as position from left or right as follows
x = win.winfo_screenwidth() // 2 - win_width // 2
y = win.winfo_screenheight() // 2 - win_height // 2
# this is the line that will center your window
win.geometry('{}x{}+{}+{}'.format(width, height, x, y))
# This seems to draw the window frame immediately, so only call deiconify()
# after setting correct window position
win.deiconify()
import tkinter as tk
main_app = tk.Tk()
main_app.attributes('-alpha', 0.0) # Opcional, para deixar a janela totalmente transparente até os ajustes serem feitos.
main_app.minsize(500, 300)
center(main_app) # A função
main_app.attributes('-alpha', 1.0) # A interface fica visível novamente.
main_app.mainloop()
EasyMP3Gain no Debian, Ubuntu e derivados
Usando o VirtualBox para Otimizar as VMs Instaladas no Genymotion
Ícone do atunes não aparece no Menu Inicial no Slackware
Nomes de arquivos e codificação
EarSketch - Aplicativo online que usa Python para criar e remixar músicas
Spyder - Excelente IDE para desenvolver em Python
Referenciando linhas anteriores em um arquivo csv usando Pandas
Hardware Project Simulator 0.1 - Simulador de montagem de computadores
Como atualizar sua versão estável do Debian
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Script de montagem de chroot automatica
Atualizar Linux Mint 22.2 para 22.3 beta
Jogar games da Battle.net no Linux com Faugus Launcher
Como fazer a Instalação de aplicativos para acesso remoto ao Linux
Instalar Dual Boot, Linux+Windows. (5)
Conky, alerta de temperatura alta (16)
De volta para o futuro - ou melhor, para o presente (parte 2) (3)









