-1

我对编程很陌生,我的任务是创建一个温度概览程序。我决定创建一个日历,以便每个月轻松概览。我所查看的月份中的每一天都应该阅读特定日期的文本文件。它应该计算那里的行数并计算特定值及以上以获得百分比。有了这个百分比,我们可以在特定日期的背景中添加红色。单击它应该打开一个带有确切该文件的图形程序,我已经编程了

现在我被困在程序应该找到我正在查看的那些日子开始阅读文本文件以计算“红色”颜色。

这是到目前为止的代码:

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()
4

1 回答 1

1

您想知道用户何时选择一天来显示相应的数据。这可以通过绑定来实现。<<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()
于 2020-02-25T08:48:53.300 回答