| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- from re import A, I
- import customtkinter as ctk
- import json
- from PIL import Image, ImageTk
- import time
- import asyncio
- from dobluetooth import connect, getData
- import dobluetooth
- """
- parse esp32 data string and make each axis and accell data its own varible
- then do math on all those varibles to give us ONE NUMBER from all six numbers
- """
- def getCurrentScore():
- #than do math to figure out power level
- return 30
- names = []
- scores = []
- currentScore = getCurrentScore()
- highestScore = 100
- highScoreName = ""
- if currentScore > highestScore :
- highestScore = currentScore
- f = open("scores.txt", "rw")
- f.write(str(highestScore) + highScoreName)
- scores.append(highestScore)
- names.append(highScoreName)
- ctk.set_appearance_mode("System") # Modes: system (default), light, dark
- ctk.set_default_color_theme("blue") # Themes: blue (default), dark-blue, green
- app = ctk.CTk() # create CTk window like you do with the Tk window
- app.geometry("1440x1024")
- canvas = ctk.CTkCanvas(app, width=250, height=250,highlightthickness=0,)
- canvas.config(background="white")
- canvas.place(x=0,y=0)
- def placeLeaderboard():
- canvas.create_rectangle(0, 0, 500, 500, fill="grey20", width=2) #grey14 to match background
- intx = 0
- inty = 60
- for i in range(len(names)):
- label1 = ctk.CTkLabel(width=124,height=39,text_color="white",text=names[i], font=("Arial",15),master=app)
- label1.place(x=intx,y=inty)
- label2 = ctk.CTkLabel(width=124,height=39,text_color="white",text=scores[i], font=("Arial",15),master=app)
- label2.place(x=intx+125,y=inty)
- inty+=40
- LEADERBOARD = ctk.CTkLabel(width=249,height=39,text_color="white",text="Leaderboard", font=("Arial",50),master=app)
- LEADERBOARD.place(x=0,y=0)
- StartButton = ctk.CTkButton(width=00,height=150,text="START",fg_color="green",corner_radius=50,font=("Arial",50),text_color="gray99",master=app)
- StartButton.place(x=50,y=300)
- ResetButton = ctk.CTkButton(width=00,height=150,text="RESET",fg_color="orange2",corner_radius=50,font=("Arial",50),text_color="gray99", master=app)
- ResetButton.place(x=50,y=500)
- scoreTitle = ctk.CTkLabel(width=50,height=20,text_color="white",text="Current Score", font=("Arial",50),master=app)
- scoreTitle.place(x=350, y=20)
- scoreLabel = ctk.CTkLabel(width=50,height=20,text_color="white",text=currentScore, font=("Arial",50),master=app)
- scoreLabel.place(x=500, y=100)
- nameEntry = ctk.CTkEntry(width=300,height=50,master=app,font=("Arial",50))
- nameEntry.place(x=370,y=200)
- nameEntryButton = ctk.CTkButton(width=50,height=50,text="ENTER",fg_color="green",font=("Arial",20),text_color="gray99", master=app)
- nameEntryButton.place(x=670,y=205)
- image = Image.open("./Bell Drawing.png")
- photo = ImageTk.PhotoImage(image)
- image_label = ctk.CTkLabel(image=photo,text="",width=10, master=app)
- image_label.place(x=800,y=0)
- dinger = ctk.CTkLabel(width=40,height=30,text="",fg_color="gray77",master=app)
- dinger.place(x=1405,y=900)
- placeLeaderboard()
- #label = customtkinter.CTkLabel(app, text=f"Current Highest Record is: {highestRecord} | this was acomplished by: {highestRecordName}", fg_color="brown")
- #progressbar = customtkinter.CTkProgressBar(app, height=300,orientation="vertical",width=40,fg_color="blue",progress_color="green",mode='determinate')
- #progressbar.set(float(f"0.{highestRecord}"))
- #label.grid(column=0,row=0)
- #progressbar.grid(column=25,row=8)
- def data():
- asyncio.run(dobluetooth.getData())
- app.after(1000,data)
- app.mainloop()
|