我遇到了问题。我必须编写程序,检查给定的DAY,MONTH,YEAR的星期几。
我定义了一个函数'dayoftheweek',它找到了给定日期的星期几。 但这是我的问题。我不知道如何从GUI用户那里得到三个变量d,m,y。 此外,我不知道如何制作一个精确的按钮说“接受”,并将我的3个变量移动到dayoftheweek功能。
这是代码
import math
from tkinter import *
def dayoftheweek(d, m, y):
a=math.floor((14-m)/12)
y1=r+4800-a
n=m+12*-3
l=d+math.floor((153*n)/5)+365*y1+math.floor(y1/4)-math.floor(y1/100)+math.floor(y1/100)-32045
p = (l%7)+1
return p
def date():
d = int(e1.get())
m = int(e2.get())
y = int(e3.get())
print(dayoftheweek(d, m, y))
master = Tk()
Label(master, text="Day").grid(row=0)
Label(master, text="Month").grid(row=1)
Label(master, text="Year").grid(row=2)
e1 = Entry(master)
e2 = Entry(master)
e3 = Entry(master)
e1.grid(row=0, column=1)
e2.grid(row=1, column=1)
e3.grid(row=2, column=1)
mainloop( )
答案 0 :(得分:0)
要在Tkinter中打印内容,您不能在代码中使用read.csv()
语句。
您必须在某处拥有Label,然后更改该Label的内容。为此,您必须为该Label分配一个StringVar。 StringVar就像普通字符串的特殊情况一样,特别是因为每次更改它都会刷新窗口的外观。这就是我在这里所做的:
old <- read.csv2(file.choose(), header = TRUE)
刚添加了一个标签,我们可以在其中更新一些文字,即“打印到”。
此外,我添加了一个按钮,以便您可以调用您的函数print
。您可以通过使用调用指定命令的按钮或通过将键(即Enter,Space ...)绑定到窗口来使窗口执行某些操作。
printVar = StringVar()
Label(master, textvariable=printVar).grid(row=4, column=1)
现在,每次按下按钮,都会调用函数date
,printVar的内容将被更改并显示在标签中。
以下是完整代码,我还添加了button = Button(master, text="Ok", command=date).grid(row=3, column=1))
,因为您的代码不完整,并提供错误date
。
r=100