脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - python项目--使用Tkinter的日历GUI应用程序

python项目--使用Tkinter的日历GUI应用程序

2021-12-24 17:17海拥 Python

在 Python 中,我们可以使用 Tkinter 制作 GUI。如果你非常有想象力和创造力,你可以用 Tkinter 做出很多有趣的东西,希望本篇文章能够帮到你

第一步:安装 tkinter

首先使用以下命令安装 tkinter:

pip install tk

python项目--使用Tkinter的日历GUI应用程序

我们还需要一个日历包,但我们不必安装它,它是python自带的默认包。

第二步:导入模块

首先导入 calendar 模块和 tkinter 模块

?
1
2
import calendar
from tkinter import *

第三步:显示给定年份日历

下面的函数显示给定年份的日历

?
1
2
3
4
5
6
7
8
9
10
def showcalender():
    gui = tk()
    gui.config(background='grey')
    gui.title("calender for the year")
    gui.geometry("550x600")
    year = int(year_field.get())
    gui_content= calendar.calendar(year)
    calyear = label(gui, text= gui_content, font= "consolas 10 bold")
    calyear.grid(row=5, column=1,padx=20)
    gui.mainloop()

说明

showcalender 函数正在显示日历。您在搜索框中输入年份并按下 enter 键时,将在此处管理日历的显示方式。您可以在此处设置灰色的背景颜色,并且可以根据需要在代码中进行更改。您还可以在此处设置日历的尺寸为 550×600。然后您要求以整数形式输入年份。一旦用户输入年份日历内容,就会通过将年份作为参数从 python 的日历模块中获取。

第四步:设置驱动代码

下面是驱动代码

?
1
2
3
4
5
6
7
8
9
10
11
if __name__=='__main__':
    new = tk()
    new.config(background='grey')
    new.title("calender")
    new.geometry("250x140")
    cal = label(new, text="calender",bg='grey',font=("times", 28, "bold"))
    #输入年份的标签
    year = label(new, text="enter year", bg='dark grey')
    #年份输入文本框
    year_field=entry(new)
    button = button(new, text='show calender',fg='black',bg='blue',command=showcalender)

调整小部件的位置

?
1
2
3
4
5
6
cal.grid(row=1, column=1)
year.grid(row=2, column=1)
year_field.grid(row=3, column=1)
button.grid(row=4, column=1)
exit.grid(row=6, column=1)
new.mainloop()

说明

在驱动程序代码中,首先我们为屏幕的左侧部分提供背景颜色(如下图所示)。由于给出输入年份的窗口很小,因此我们将其尺寸设置为 250×140。在 year_field 下方的按钮行中,我们调用了上面创建的 showcalendar 函数。此函数向我们显示输入年份的完整日历。

现在,我们还需要调整日历中的小部件,为此我们定义了网格中所有内容的位置。您可以通过更改网格行和列参数来探索更多内容。

第五步:输出日历 gui

python项目--使用Tkinter的日历GUI应用程序

python项目--使用Tkinter的日历GUI应用程序

虽然样式丑了些,但是作为新手做出这样的小程序还是有点成就感的。

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注服务器之家的更多内容!

原文链接:https://blog.csdn.net/qq_44273429/article/details/119847328

延伸 · 阅读

精彩推荐