tkcalendar: использование календаря для просмотра данных о температуре. (Raspberry Pi) - PullRequest
0 голосов
/ 24 февраля 2020

Я довольно новичок в программировании, и у меня появилась задача создать программу обзора температуры. Я решил создать календарь для удобного просмотра каждый месяц. Каждый день в месяце, который я просматриваю, следует читать текстовый файл для указанного c дня. Он должен подсчитать количество строк, которые были сделаны, и подсчитать указанное значение c и выше, чтобы получить процент. С этим процентом мы могли бы добавить красный на заднем фоне указанного c дня. При нажатии на нее должна открыться графическая программа с точным файлом, который я уже запрограммировал

Теперь я застрял в том, что программа должна найти те дни, которые я просматриваю, чтобы начать читать текстовые файлы, чтобы вычислить «красный». "color.

Вот код на данный момент:

PS: Мои знания по кодированию основаны примерно на 4 днях ...

from tkinter import *
from tkcalendar import *
import tkcalendar
import tkinter
from tkinter import messagebox
from datetime import date                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               


#root =Tk()

def cal_func():
    def calval():
        de = DateEntry
        tag = 1
        counter = 0
        for i in range(1, 31):
            #??????
            counter + 1

    cal = Calendar(
        background="grey",
        normalbackground="white",
        font="Arial 20",
        weekendbackground="lightgray",
        selectmode="day",
        year=date.today().year,
        month=date.today().month,
        day=date.today().day
    )

    cal.pack(expand=True, fill="both")
    btn3 = Button(text="Aktualisieren", command=calval)
    btn3.pack()

cal_func()

mainloop()

1 Ответ

0 голосов
/ 25 февраля 2020

Вы хотите знать, когда пользователь выбирает день для отображения соответствующих данных. Это возможно через привязки. Событие <<CalendarSelected>> запускается каждый раз, когда выбирается новый день. Таким образом, вы можете привязать функцию к этому событию. В этой функции (display_day() в приведенном ниже коде) вы можете получить выбранный день с помощью get_date() или selection_get(), а затем загрузить свои данные из файла и отобразить график.

import tkcalendar
import tkinter as tk
from tkinter import ttk

def display_day(event):
    day = cal.get_date() # you can use cal.selection_get() to get the date
                         # as a datetime.date
    display.configure(text=f"Selected day is {day}")  # replace by your code to load data 
                                                      # and display graph

root = tk.Tk()
cal = tkcalendar.Calendar(root, background="grey", normalbackground="white",
                          font="Arial 20",
                          weekendbackground="lightgray",
                          selectmode="day")
cal.pack()
display = ttk.Label(root, text="Selected day is ")
display.pack()
cal.bind("<<CalendarSelected>>", display_day)
root.mainloop()
...