Advertisement
Vasilena

root

Mar 30th, 2023
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 4.00 KB | None | 0 0
  1. import tkinter as tk
  2. from tkinter import *
  3. import canvas
  4. from tkinter import messagebox
  5. import tkinter.messagebox
  6.  
  7.  
  8. class Window:
  9.  
  10. def __init__(self, root):
  11. self.window = root
  12. self.background_color = '#999da0'
  13. self.window.attributes('-fullscreen', True)
  14. self.window.title("Control Panel")
  15. self.window.configure(background='#999da0')
  16.  
  17. self.screen_width = self.window.winfo_screenwidth() # 1920
  18. self.screen_height = self.window.winfo_screenheight() # 1080
  19.  
  20. # manual mode
  21. self.manual = Label(root, text="MANUAL MODE", font=('Arial', 15), bg=self.background_color, fg="black")
  22. self.manual.place(x=(self.screen_width / 3) * 2, y=self.screen_height / 10)
  23.  
  24. self.pump_one_on_btn = Button(root, text="1 ON", font=("Arial", 15, "bold"), bg="red", fg="white")
  25. self.pump_one_on_btn.place(x=1300, y=200)
  26. self.pump_one_off_btn = Button(root, text="1 OFF", font=("Arial", 15, "bold"), bg="red", fg="white")
  27. self.pump_one_off_btn.place(x=1300, y=250)
  28.  
  29. self.pump_two_on_btn = Button(root, text="2 ON", font=("Arial", 15, "bold"), bg="red", fg="white")
  30. self.pump_two_on_btn.place(x=1800, y=200)
  31. self.pump_two_off_btn = Button(root, text="2 OFF", font=("Arial", 15, "bold"), bg="red", fg="white")
  32. self.pump_two_off_btn.place(x=1800, y=250)
  33.  
  34. # exit program button
  35. self.exit_btn = Button(root, text="X", height=1, width=2, font=("Arial", 15, "bold"), command=self.Exit_btn, bg="red",
  36. fg="white")
  37. self.exit_btn.place(x=self.screen_width - 55, y=self.screen_height - (self.screen_height - 5))
  38.  
  39. # automatic mode
  40. self.automatic_btn = Button(root, text="AUTOMATIC MODE", font=('Arial', 15), bg="white", fg="black")
  41. self.automatic_btn.place(x=(self.screen_width / 3) * 2, y=self.screen_height / 8)
  42.  
  43. # canvas setup
  44. self.canvas = Canvas(root, width=(self.screen_width / 3) * 2, height=self.screen_height, bg=self.background_color)
  45. self.canvas.pack()
  46. self.canvas.place(bordermode=OUTSIDE)
  47.  
  48. # heading
  49. self.canvas.create_text(self.screen_width / 3, self.screen_height / 18, text='C O N T R O L P A N E L', fill='black',
  50. font='Arial 25')
  51.  
  52. # create scale tank One
  53. self.canvas.create_line(40, 110, 40, 370, width=2)
  54. for i in range(6):
  55. self.p = 100 - i * 20
  56. self.y = 110
  57. self.y = self.y + i * 52
  58. self.canvas.create_text(15, self.y, text=self.p, font=("Arial", 10, "bold"))
  59. self.canvas.create_text(30, self.y, text="%", font=("Arial", 10, "bold"))
  60. self.canvas.create_line(40, self.y, 50, self.y, width=2)
  61.  
  62. # create scale tank Two
  63. self.canvas.create_line(40, 450, 40, 710, width=2)
  64. for i in range(6):
  65. self.p = 100 - i * 20
  66. self.y = 450
  67. self.y = self.y + i * 52
  68. self.canvas.create_text(15, self.y, text=self.p, font=("Arial", 10, "bold"))
  69. self.canvas.create_text(30, self.y, text="%", font=("Arial", 10, "bold"))
  70. self.canvas.create_line(40, self.y, 50, self.y, width=2)
  71.  
  72. # tank One
  73. self.canvas.create_rectangle(60, 110, 230, 370, fill='#d9dddc')
  74. # tank One Water
  75. self.canvas.create_rectangle(60, 240, 230, 370, fill='blue')
  76.  
  77. # tank Two
  78. self.canvas.create_rectangle(60, 450, 230, 710, fill='#d9dddc')
  79. # tank Two Water
  80. self.canvas.create_rectangle(60, 505, 230, 710, fill='blue')
  81.  
  82. def Exit_btn(self):
  83. self.Exit_btn = tkinter.messagebox.askyesno("Control Panel",
  84. "Сигурни ли сте, че искате да излезете?")
  85. if self.Exit_btn > 0:
  86. self.window.destroy()
  87. return
  88.  
  89.  
  90. if __name__ == "__main__":
  91. root = tk.Tk()
  92. obj = Window(root)
  93. root.mainloop()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement