Come impostare la dimensione del tk_messageBox?
-
09-10-2019 - |
Domanda
Sto usando un tk_messageBox
con un messaggio Lage, quindi vorrei configurare il layout di quel messaggio di dialogo.
Sto usando tk_messageBox
in questo modo:
set status [tk_messageBox -type yesno -icon warning -message "Here goes a text with 50 words"]
Come faccio a impostare la larghezza e l'altezza del tk_messageBox
qui?
Forse ci sono alcune alternative migliori per tk_messageBox
?
Soluzione
Non è possibile impostare le dimensioni di un tk_messageBox
(che di funzionalità, che non si adatta con il modo in cui questi dialoghi funzionano su Windows e OSX). È possono provare a mettere un po 'del messaggio nell'opzione -detail
, che di solito utilizza un carattere più piccolo.
Oppure si può provare a guardare nel file msgbox.tcl
dell'installazione Tk per il codice Tcl che implementa la finestra di dialogo messaggio su Unix / X11. Suggerimento: su quella piattaforma solo , tk_messageBox
è davvero un alias per ::tk::MessageBox
. Il nome del widget creato da questo script dipende dall'opzione -parent
, ma se questo è assente, di .__tk__messagebox
. Sapendo che, si dovrebbe essere in grado di utilizzare la gestione degli eventi intelligente per configurare il widget toplevel
in questione. Ma questa non è una soluzione piacevole, e non funzionerà su Windows o OSX (quando compilazione per Aqua invece di X11).
Altri suggerimenti
E 'questo quello che avevi in ??mente?
import Tkinter
import tkMessageBox
window = Tkinter.Tk()
window.option_add('*Dialog.msg.width', 50)
tkMessageBox.showinfo("header", "Hello, World!")