modFrmBot.py 1.4 KB

123456789101112131415161718192021222324252627282930313233343536
  1. """Фрейм для обновления статистики бота"""
  2. from typing import Dict, Any
  3. from tkinter import LabelFrame, Frame, Label, Button
  4. from pakApp.pakGui.pakWinState.modWinState import WinState
  5. class FrmBot(Frame):
  6. """Индикаторный фрейм для бота"""
  7. def __init__(self, app: Any, frm_list_bot: LabelFrame, name: str) -> None:
  8. Frame.__init__(self, frm_list_bot, border=3, relief="sunken")
  9. self.pack(fill="x", side="top")
  10. self.app = app
  11. self.lbl_state = Label(self)
  12. self.lbl_state.pack(side="left")
  13. self.name = name
  14. self.btn_stat = Button(self, text="Статистика", command=self.show_stat)
  15. self.btn_stat.pack(side="right")
  16. def show_stat(self):
  17. """Показать полную статистику бота"""
  18. print(f"FrmBot.show_Stat: name={self.name}")
  19. WinState(self.app.gui.winMain, self.name)
  20. def update_state(self, dict_bot: Dict[str, str]) -> None:
  21. """Обновить блиц-статус бота"""
  22. str_auto: str = dict_bot["isAuto"]
  23. str_is_work: str = dict_bot["isWork"]
  24. gold: str = dict_bot["gold"]
  25. fuel: str = dict_bot["fuel"]
  26. self.lbl_state["text"] = "["+self.name+"] " +\
  27. "[АвтоИгра="+str_auto+"] " +\
  28. "[Работа="+str_is_work+"] " +\
  29. "[Золото="+gold+"] " +\
  30. "[Топливо="+fuel+"] "