Welcome folks today in this blog post we will be building a language translator app using translate module
in tkinter
gui desktop app in python. All the full source code of the application is given below.
Get Started
In order to get started you need to install the below library using the pip
command as shown below
pip install tkinter
pip install translate
After installing this library you need to make an app.py
file and copy paste the following code
app.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
from tkinter import * from translate import Translator #Translator function def translate(): translator= Translator(from_lang=lan1.get(),to_lang=lan2.get()) translation = translator.translate(var.get()) var1.set(translation) #Tkinter root Window with title root = Tk() root.title("Translator") #Creating a Frame and Grid to hold the Content mainframe = Frame(root) mainframe.grid(column=0,row=0, sticky=(N,W,E,S) ) mainframe.columnconfigure(0, weight = 1) mainframe.rowconfigure(0, weight = 1) mainframe.pack(pady = 100, padx = 100) #variables for dropdown list lan1 = StringVar(root) lan2 = StringVar(root) #choices to show in dropdown menu choices = { 'English','Hindi','Gujarati','Spanish','German'} #default selection for dropdownlists lan1.set('English') lan2.set('Hindi') #creating dropdown and arranging in the grid lan1menu = OptionMenu( mainframe, lan1, *choices) Label(mainframe,text="Select a language").grid(row = 0, column = 1) lan1menu.grid(row = 1, column =1) lan2menu = OptionMenu( mainframe, lan2, *choices) Label(mainframe,text="Select a language").grid(row = 0, column = 2) lan2menu.grid(row = 1, column =2) #Text Box to take user input Label(mainframe, text = "Enter text").grid(row=2,column=0) var = StringVar() textbox = Entry(mainframe, textvariable=var).grid(row=2,column=1) #textbox to show output #label can also be used Label(mainframe, text = "Output").grid(row=2,column=2) var1 = StringVar() textbox = Entry(mainframe, textvariable=var1).grid(row=2,column=3) #creating a button to call Translator function b=Button(mainframe,text='Translate',command=translate).grid(row=3,column=1,columnspan=3) root.mainloop() |
If you execute the above python script
by typing the below command
python app.py