xxxxxxxxxx
import tkinter as tk
from tkinter import messagebox
from PyDictionary import PyDictionary
# Initialize the PyDictionary object
dictionary = PyDictionary()
# Function to display the dictionary or thesaurus result
def display_result():
word = entry_word.get()
if not word:
messagebox.showinfo("Error", "Please enter a word.")
return
choice = combo_choice.get()
if choice == "Dictionary":
definition = dictionary.meaning(word)
if definition:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"Dictionary Definition of '{word}':\n\n")
for pos, meanings in definition.items():
result_text.insert(tk.END, f"{pos.capitalize()}:\n")
for meaning in meanings:
result_text.insert(tk.END, f"- {meaning}\n")
result_text.config(state="disabled")
else:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"No dictionary definition found for '{word}'.")
result_text.config(state="disabled")
elif choice == "Thesaurus":
synonyms = dictionary.synonym(word)
if synonyms:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"Thesaurus Synonyms for '{word}':\n\n")
for synonym in synonyms:
result_text.insert(tk.END, f"- {synonym}\n")
result_text.config(state="disabled")
else:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"No synonyms found for '{word}'.")
result_text.config(state="disabled")
def save_result():
result = result_text.get(1.0, tk.END)
if not result.strip():
messagebox.showinfo("Error", "No result to save.")
return
filename = entry_word.get() + "_result.txt"
with open(filename, "w") as file:
file.write(result)
# Create the main application window
app = tk.Tk
xxxxxxxxxx
import tkinter as tk
from tkinter import messagebox
from PyDictionary import PyDictionary
# Initialize the PyDictionary object
dictionary = PyDictionary()
# Function to display the dictionary or thesaurus result
def display_result():
word = entry_word.get()
if not word:
messagebox.showinfo("Error", "Please enter a word.")
return
choice = combo_choice.get()
if choice == "Dictionary":
definition = dictionary.meaning(word)
if definition:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"Dictionary Definition of '{word}':\n\n")
for pos, meanings in definition.items():
result_text.insert(tk.END, f"{pos.capitalize()}:\n")
for meaning in meanings:
result_text.insert(tk.END, f"- {meaning}\n")
result_text.config(state="disabled")
else:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"No dictionary definition found for '{word}'.")
result_text.config(state="disabled")
elif choice == "Thesaurus":
synonyms = dictionary.synonym(word)
if synonyms:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"Thesaurus Synonyms for '{word}':\n\n")
for synonym in synonyms:
result_text.insert(tk.END, f"- {synonym}\n")
result_text.config(state="disabled")
else:
result_text.config(state="normal")
result_text.delete(1.0, tk.END)
result_text.insert(tk.END, f"No synonyms found for '{word}'.")
result_text.config(state="disabled")
def save_result():
result = result_text.get(1.0, tk.END)
if not result.strip():
messagebox.showinfo("Error", "No result to save.")
return
filename = entry_word.get() + "_result.txt"
with open(filename, "w") as file:
file.write(result)
# Create the main application window
app = tk.Tk()
app.title("Dictionary and Thesaurus")
# Label and Entry for entering the word
label_word = tk.Label(app, text="Enter a word:")
label_word.pack()
entry_word = tk.Entry(app)
entry_word.pack()
# Combo box for choosing Dictionary or Thesaurus
combo_choice = tk.StringVar()
combo_box = tk.OptionMenu(app, combo_choice, "Dictionary", "Thesaurus")
combo_choice.set("Dictionary")
combo_box.pack()
# Button to get the definition/synonyms
search_button = tk.Button(app, text="Search", command=display_result)
search_button.pack()
# Text widget for displaying results
result_text = tk.Text(app, height=10, width=50, wrap=tk.WORD)
result_text.pack()
result_text.config(state="disabled")
# Button to save the result
save_button = tk.Button(app, text="Save", command=save_result)
save_button.pack()
# Start the Tkinter main loop
app.mainloop()