Skip to content

Commit 3e003a8

Browse files
authored
Fix
1 parent 9e0c7e8 commit 3e003a8

File tree

1 file changed

+34
-45
lines changed

1 file changed

+34
-45
lines changed

Translator/translator.py

Lines changed: 34 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,54 +1,43 @@
11
from tkinter import *
22
from translate import Translator
33

4-
5-
# Translator function
6-
def translate():
7-
translator = Translator(from_lang=lan1.get(), to_lang=lan2.get())
8-
translation = translator.translate(var.get())
9-
var1.set(translation)
10-
11-
12-
# Tkinter root Window with title
4+
# Translator
5+
def translate_text():
6+
try:
7+
translator = Translator(from_lang=lan1.get(), to_lang=lan2.get())
8+
translation = translator.translate(text_input.get())
9+
output_text.set(translation)
10+
except Exception as e:
11+
output_text.set("Error")
12+
13+
# root window
1314
root = Tk()
1415
root.title("Translator")
1516

16-
# Creating a Frame and Grid to hold the Content
17+
# frame
1718
mainframe = Frame(root)
18-
mainframe.grid(column=0, row=0, sticky=(N, W, E, S))
19-
mainframe.columnconfigure(0, weight=1)
20-
mainframe.rowconfigure(0, weight=1)
21-
mainframe.pack(pady=100, padx=100)
22-
23-
# variables
24-
lan1 = StringVar(root)
25-
lan2 = StringVar(root)
26-
lan1.set("English")
27-
lan2.set("Hindi")
28-
29-
# taking input of languages from user
30-
Label(mainframe, text="Enter language translate from").grid(row=0, column=1)
31-
var = StringVar()
32-
textbox = Entry(mainframe, textvariable=var).grid(row=1, column=1, padx=10, pady=10)
33-
34-
Label(mainframe, text="Enter a language to").grid(row=0, column=2)
35-
var = StringVar()
36-
textbox = Entry(mainframe, textvariable=var).grid(row=1, column=2, padx=10, pady=10)
37-
38-
# Text Box to take user input
39-
Label(mainframe, text="Enter text").grid(row=3, column=0)
40-
var = StringVar()
41-
textbox = Entry(mainframe, textvariable=var).grid(row=3, column=1)
42-
43-
# textbox to show output
44-
# label can also be used
45-
Label(mainframe, text="Output").grid(row=3, column=2)
46-
var1 = StringVar()
47-
textbox = Entry(mainframe, textvariable=var1).grid(row=3, column=3, padx=10, pady=10)
48-
49-
# creating a button to call Translator function
50-
b = Button(
51-
mainframe, text="Translate", command=translate, activebackground="green"
52-
).grid(row=4, column=1, columnspan=3)
19+
mainframe.pack(pady=50, padx=50)
20+
21+
lan1 = StringVar(value="en") # default: English
22+
lan2 = StringVar(value="hi") # default: Hindi
23+
text_input = StringVar()
24+
output_text = StringVar()
25+
26+
# input fields
27+
Label(mainframe, text="From (e.g. en)").grid(row=0, column=0)
28+
Entry(mainframe, textvariable=lan1).grid(row=1, column=0, padx=10, pady=10)
29+
30+
Label(mainframe, text="To (e.g. hi)").grid(row=0, column=1)
31+
Entry(mainframe, textvariable=lan2).grid(row=1, column=1, padx=10, pady=10)
32+
33+
# Text input
34+
Label(mainframe, text="Enter text").grid(row=2, column=0)
35+
Entry(mainframe, textvariable=text_input).grid(row=3, column=0, columnspan=2, padx=10, pady=10)
36+
37+
# Output
38+
Label(mainframe, text="Output").grid(row=4, column=0)
39+
Entry(mainframe, textvariable=output_text).grid(row=5, column=0, columnspan=2, padx=10, pady=10)
40+
41+
Button(mainframe, text="Translate", command=translate_text, bg="green").grid(row=6, column=0, columnspan=2)
5342

5443
root.mainloop()

0 commit comments

Comments
 (0)