Advertisement
Abdullah100998

Temp. Conversation

Jun 2nd, 2021
1,054
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.75 KB | None | 0 0
  1. import tkinter as tk
  2. from functools import partial
  3.  
  4.  
  5. # app gui
  6. root = tk.Tk()
  7.  
  8. tempVal = "Celsius"
  9.  
  10. # getting dropdown
  11.  
  12.  
  13. def store_temp(sel_temp):
  14.     global tempVal
  15.     tempVal = sel_temp
  16.  
  17. # main conversion
  18.  
  19.  
  20. def call_convert(rlabel1, rlabel2, inputn):
  21.     tem = inputn.get()
  22.     if tempVal == 'Celsius':
  23.         f = float((float(tem) * 9 / 5) + 32)
  24.         k = float((float(tem) + 273.15))
  25.         rlabel1.config(text="%.2f Fahrenheit" % f)
  26.         rlabel2.config(text="%.2f Kelvin" % k)
  27.     if tempVal == 'Fahrenheit':
  28.         c = float((float(tem) - 32) * 5 / 9)
  29.         k = c + 273
  30.         rlabel1.config(text="%.2f Celsius" % c)
  31.         rlabel2.config(text="%.2f Kelvin" % k)
  32.     if tempVal == 'Kelvin':
  33.         c = float((float(tem) - 273.15))
  34.         f = float((float(tem) - 273.15) * 1.8000 + 32.00)
  35.         rlabel1.config(text="%.2f Celsius" % c)
  36.         rlabel2.config(text="%.2f Fahrenheit" % f)
  37.     return
  38.  
  39.  
  40. # label entry
  41. numberInput = tk.StringVar()
  42. var = tk.StringVar()
  43.  
  44.  
  45. input_label = tk.Label(root, text="Enter temperature")
  46. input_entry = tk.Entry(root, textvariable=numberInput)
  47. input_label.grid(row=0, column=0)
  48. input_entry.grid(row=0, column=1)
  49. # dropdown
  50. dropDownList = ["Celsius", "Fahrenheit", " Kalvin"]
  51. dropDown = tk.OptionMenu(root, var, *dropDownList, command=store_temp)
  52. var.set(dropDownList[0])
  53. dropDown.grid(row=0, column=2)
  54.  
  55.  
  56. # result
  57.  
  58. result_label1 = tk.Label(root)
  59. result_label2 = tk.Label(root)
  60. result_label1.grid(row=2, column=1)
  61. result_label2.grid(row=3, column=1)
  62.  
  63.  
  64. # button
  65.  
  66. call_convert = partial(call_convert, result_label1, result_label2, numberInput)
  67. result_button = tk.Button(root, text="Convert", command=call_convert)
  68. result_button.grid(row=1, column=1)
  69.  
  70.  
  71. root.mainloop()
  72.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement