Świeży samouczek na temat tkinter i ttk dla Pythona 3 [zamknięty]
Zamknięte. to pytanie nie spełnia wytycznych dotyczących przepełnienia stosu . Obecnie nie przyjmuje odpowiedzi.
Chcesz poprawić to pytanie? Update the pytanie więc to on-topic {[7] } dla przepełnienia stosu.
Zamknięte 6 lat temu .
Popraw to pytanieGdzie znajdę najnowszy tutorial, który uczy tkinter
razem z ttk
?
Tkinter
wydaje się jedynym sposobem, aby przejść w Pythonie 3 (nie sugeruj Pythona 2), i ttk
dał mi nadzieję na ładny GUI.
4 answers
Tutorial TkDocs okazał się bardzo przydatny. Opisuje on budowę interfejsów Tk
za pomocą Pythona oraz Tkinter
i ttk
i robi notatki o różnicach między Pythonem 2 i 3. Ma również przykłady w Perlu, Ruby i Tcl, ponieważ celem jest nauczenie samego Tk, a nie wiązań dla określonego języka.
Nie przejrzałem całej sprawy od początku do końca, raczej użyłem tylko kilku tematów jako przykładów rzeczy, na których utknąłem, ale jest to bardzo Pouczające i komfortowo napisane. Dzisiaj czytając intro i kilka pierwszych sekcji, myślę, że zacznę pracować nad resztą.
W końcu jest aktualna, a strona ma bardzo ładny wygląd. Ma również kilka innych stron, które warto sprawdzić (Widgety, zasoby, Blog). Ten facet robi wiele, aby nie tylko nauczyć Tk, ale także poprawić ludziom zrozumienie, że to nie jest brzydka bestia, jaką kiedyś była.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-03-18 15:03:38
Polecam NMT Tkinter 8.5 reference .
- widżety tematyczne
- Dostosowywanie i tworzenie motywów i stylów ttk
- Znajdowanie i używanie motywów
- używanie i dostosowywanie stylów ttk
- warstwa elementów ttk
Nazwy modułów używane w niektórych przykładach to nazwy używane w Pythonie 2.7.
Oto odniesienie do zmian nazw w Pythonie 3: link
Jeden z wygody ttk polega na tym, że można wybrać wcześniejtheme ,
jest to pełny zestaw stylów zastosowanych do widżetów ttk .
Oto przykład, który napisałem (dla Pythona 3), który pozwala wybrać dowolny dostępny motyw z Combobox :
import random
import tkinter
from tkinter import ttk
from tkinter import messagebox
class App(object):
def __init__(self):
self.root = tkinter.Tk()
self.style = ttk.Style()
available_themes = self.style.theme_names()
random_theme = random.choice(available_themes)
self.style.theme_use(random_theme)
self.root.title(random_theme)
frm = ttk.Frame(self.root)
frm.pack(expand=True, fill='both')
# create a Combobox with themes to choose from
self.combo = ttk.Combobox(frm, values=available_themes)
self.combo.pack(padx=32, pady=8)
# make the Enter key change the style
self.combo.bind('<Return>', self.change_style)
# make a Button to change the style
button = ttk.Button(frm, text='OK')
button['command'] = self.change_style
button.pack(pady=8)
def change_style(self, event=None):
"""set the Style to the content of the Combobox"""
content = self.combo.get()
try:
self.style.theme_use(content)
except tkinter.TclError as err:
messagebox.showerror('Error', err)
else:
self.root.title(content)
app = App()
app.root.mainloop()
Uwaga: zauważyłem, że istnieje motyw 'vista' dostępny podczas korzystania z Pythona 3.3 (ale nie 2.7).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-09-07 22:13:42
Polecam lekturę dokumentacji . Jest prosty i autorytatywny i dobry dla początkujących.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-06 10:44:12
To nie jest naprawdę świeże, ale to jest zwięzłe, a z tego co widziałem ważne dla Pythona 2 i 3.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-05-04 17:09:22