Domanda

Python 2.7 (32-bit) di Windows: Stiamo sperimentando con il supporto di Python 2.7 di per tema Tkinter (ttk) per una semplice interfaccia grafica di e siamo venuti via molto impressionato !! L'unica area in cui il nuovo supporto tema sembra avere venire a breve è come OS specifiche finestre di dialogo comuni sono avvolti.

Corretto: In altre parole, le MessageBox e ColorChooser comuni finestre di dialogo sono "brutto" alla ricerca di stile Win 95 blocchi cercando pulsanti contro i pulsanti a tema (arrotondato / gradiente) che normalmente appaiono nelle finestre di dialogo comuni sotto XP, Vista, e Windows 7. (sto testando su tutte le 3 piattaforme con identici, un-a tema risultati).

. Nota: Le finestre di dialogo filedialog comuni (askopenfilename, askopenfilenames, asksaveasfilename, askdirectory) sono tutti correttamente tema

import tkMessageBox as messagebox
messagebox.showinfo()

import tkColorChooser as colorchooser
color = colorchooser.askcolor( parent=root, title='Customize colors' )

Tutte le idee su ciò che è necessario per ottenere MessageBox e ColorChooser comuni finestre di dialogo di Tkinter per essere operativo tema compatibile (almeno in Windows XP o superiore)?

È stato utile?

Soluzione

La tua osservazione è principalmente corretta. Io vedo che cosa si fa riferimento nel messagebox e colorchooser. Tuttavia, i miei filedialogs tutti sembrano avere pulsanti adeguatamente arrotondati, ecc.

La mia raccomandazione per voi di fare del messagebox è quello di creare il proprio MessageBox utilizzando il widget di TopLevel, e quindi definire che cosa avete bisogno su di esso e il comportamento più appropriato per i diversi tasti (è sicuramente un po 'più difficile di un semplice utilizzando un messagebox, ma se si ha realmente bisogno i nuovi pulsanti di stile, funzionerà).

Non credo che si può incidere insieme una soluzione per il problema colorchooser, tuttavia.

I comunque per un minuto che forse Python 3.1 ha risolto questo problema, ma purtroppo, ho provato e che non è il caso. Suppongo che se è necessario che l'utente di scegliere un colore, i pulsanti dovranno essere brutto.

Altri suggerimenti

Una possibilità per ottenere più bello finestre di dialogo è quello di compilare lo script di un file eseguibile utilizzando pyinstaller. Spiego questo più thouroughly qui .

tl;. Dr, sembra che la compilazione con pyinstaller ti permette di avere le finestre di dialogo con lo stile del sistema operativo attualmente in esecuzione, ma non la consuetudine stili

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top