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?

È stato utile?

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!") 
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top