您现在的位置是:首页 > 技术教程 正文

Python国庆祝福

admin 阅读: 2024-03-20
后台-插件-广告管理-内容页头部广告(手机)

国庆祝福

系列文章

序号文章目录直达链接
表白系列
1无法拒绝的表白界面https://want595.blog.csdn.net/article/details/134744894
2满屏飘字表白代码https://want595.blog.csdn.net/article/details/135037388
3无限弹窗表白代码https://want595.blog.csdn.net/article/details/134744711
4李峋同款可写字版跳动的爱心https://want595.blog.csdn.net/article/details/134744191
5流星雨https://want595.blog.csdn.net/article/details/134747408
6漂浮爱心https://want595.blog.csdn.net/article/details/134744929
7爱心光波https://want595.blog.csdn.net/article/details/134747365
8玫瑰花https://want595.blog.csdn.net/article/details/134747447
节日系列
1新春/跨年烟花秀(2022)https://want595.blog.csdn.net/article/details/128727394
烟花秀(2023)https://want595.blog.csdn.net/article/details/135042880
粒子烟花https://want595.blog.csdn.net/article/details/136029420
2圣诞节圣诞礼物https://want595.blog.csdn.net/article/details/135336583
圣诞树(2022)https://want595.blog.csdn.net/article/details/128428985
绿色圣诞树(2023)https://want595.blog.csdn.net/article/details/135048607
粉色圣诞树(2023)https://want595.blog.csdn.net/article/details/135043042
3冬至大雪纷飞https://want595.blog.csdn.net/article/details/128806017
4生日生日蛋糕https://want595.blog.csdn.net/article/details/128739755
5儿童节五彩气球https://want595.blog.csdn.net/article/details/128741043
6国庆节国庆祝福https://want595.blog.csdn.net/article/details/128740923
7万圣节万圣礼物https://want595.blog.csdn.net/article/details/128734395
8愚人节愚人代码https://want595.blog.csdn.net/article/details/128696990
9中秋节浪漫星空https://want595.blog.csdn.net/article/details/128737284
10植树节樱花树https://want595.blog.csdn.net/article/details/128700178
动漫系列
1名侦探柯南系列柯南https://want595.blog.csdn.net/article/details/134777613
2喜羊羊与灰太狼系列喜羊羊https://want595.blog.csdn.net/article/details/134778583
懒羊羊https://want595.blog.csdn.net/article/details/134847642
灰太狼https://want595.blog.csdn.net/article/details/135335303
小灰灰https://want595.blog.csdn.net/article/details/135335445
小香香https://want595.blog.csdn.net/article/details/135056783
3海绵宝宝系列海绵宝宝https://want595.blog.csdn.net/article/details/134847364
4哆啦A梦系列哆啦A梦https://want595.blog.csdn.net/article/details/135037884
5HelloKitty系列hellokittyhttps://want595.blog.csdn.net/article/details/135337732
6Tom&Jerry系列Tom&Jerryhttps://want595.blog.csdn.net/article/details/135337775
7草莓熊系列草莓熊https://want595.blog.csdn.net/article/details/135337832
8皮卡丘系列迷你皮卡丘https://want595.blog.csdn.net/article/details/135337911
高级皮卡丘https://want595.blog.csdn.net/article/details/135337937
豪华皮卡丘https://want595.blog.csdn.net/article/details/135337947
炫酷系列
1  一闪一闪亮星星系列张万森下雪了https://want595.blog.csdn.net/article/details/135336915
一闪一闪亮星星https://want595.blog.csdn.net/article/details/135337049
2代码雨https://want595.blog.csdn.net/article/details/135054341
3七彩花朵https://want595.blog.csdn.net/article/details/135056670
43D星空https://want595.blog.csdn.net/article/details/135056516
5金榜题名https://want595.blog.csdn.net/article/details/135056150
6满天星https://want595.blog.csdn.net/article/details/135056305
……

文章目录

  • 系列文章
  • 前言
  • Tkinter入门
  • 国庆祝福
  • 尾声

前言

祝小伙伴们国庆节快乐!

Tkinter入门

Tkinter是Python自带的GUI库,用于创建桌面GUI应用程序。它是基于Tk GUI工具包开发的,可以用来创建GUI窗体、绘制图形界面、响应用户事件等。

接下来,我们将介绍如何使用Tkinter创建GUI应用程序。首先,我们需要导入Tkinter库:

import tkinter as tk
  • 1

创建一个GUI应用程序的第一步是创建一个窗口对象。在Tkinter中,我们使用Tk类来创建一个顶级窗口对象:

root = tk.Tk()
  • 1

该语句创建了一个名为root的顶级窗口对象。接下来,我们可以设置窗口对象的标题、大小、位置等属性:

root.title("My Application") root.geometry("300x200") # 窗口大小为300x200 root.resizable(False, False) # 禁止用户调整窗口大小
  • 1
  • 2
  • 3

以上代码设置了窗口的标题为“My Application”,大小为300x200,同时禁止用户调整窗口大小。接下来,我们需要启动窗口的事件循环,以便处理用户的输入事件:

root.mainloop()
  • 1

该语句启动了窗口的事件循环,同时防止窗口对象被销毁。

  • 创建标签(Label)

在GUI应用程序中,标签(Label)是一种常用的控件,用于显示文字或图片等内容。在Tkinter中,我们使用Label类来创建标签控件。以下代码创建了一个包含“Hello, World!”文本的标签:

label = tk.Label(root, text="Hello, World!") label.pack()
  • 1
  • 2

该代码创建了一个名为label的标签对象,父窗口为root,文本为“Hello, World!”。pack()方法将标签控件放置在父窗口上。

  • 创建按钮(Button)

按钮(Button)是另一种常用的控件,用于触发事件。在Tkinter中,我们使用Button类来创建按钮控件。以下代码创建了一个名为button的按钮对象,父窗口为root,文本为“Click Me!”:

def button_click(): label.config(text="Button Clicked!") button = tk.Button(root, text="Click Me!", command=button_click) button.pack()
  • 1
  • 2
  • 3
  • 4
  • 5

该代码创建了一个名为button的按钮对象,父窗口为root,文本为“Click Me!”。按钮控件的command参数指定了当按钮被点击时触发的函数。button_click()函数将标签控件的文本设置为“Button Clicked!”。

  • 创建输入框(Entry)

输入框(Entry)是一种常用的控件,用于接收用户输入的文本。在Tkinter中,我们使用Entry类来创建输入框控件。以下代码创建了一个名为entry的输入框对象,父窗口为root:

def entry_change(event): print(entry.get()) entry = tk.Entry(root) entry.bind("", entry_change) # 绑定回车键事件 entry.pack()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

该代码创建了一个名为entry的输入框对象,父窗口为root。entry_change()函数将打印输入框控件中的文本。bind()方法将回车键事件与entry_change()函数绑定在一起,这样当用户按下回车键时,entry_change()函数将被调用。

  • 创建复选框(Checkbutton)

复选框(Checkbutton)是一种常用的控件,用于表示二元选择。在Tkinter中,我们使用Checkbutton类来创建复选框控件。以下代码创建了一个名为checkbox的复选框对象,父窗口为root:

def checkbox_click(): if checkbox_var.get(): label.config(text="Checkbox checked!") else: label.config(text="Checkbox unchecked!") checkbox_var = tk.BooleanVar() checkbox = tk.Checkbutton(root, text="Check me!", variable=checkbox_var, command=checkbox_click) checkbox.pack()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

该代码创建了一个名为checkbox的复选框对象,父窗口为root。Checkbutton控件的variable参数指定了该控件的状态,command参数指定了当复选框状态发生变化时触发的函数。checkbox_click()函数将标签控件的文本设置为“Checkbox checked!”或“Checkbox unchecked!”。

  • 创建单选框(Radiobutton)

单选框(Radiobutton)是一种常用的控件,用于表示多项选择。在Tkinter中,我们使用Radiobutton类来创建单选框控件。以下代码创建了一个名为radiobutton_var的单选框变量,以及两个名为radio1和radio2的单选框控件:

def radiobutton_click(): if radiobutton_var.get() == 1: label.config(text="Radio 1 selected!") elif radiobutton_var.get() == 2: label.config(text="Radio 2 selected!") radiobutton_var = tk.IntVar() radio1 = tk.Radiobutton(root, text="Radio 1", variable=radiobutton_var, value=1, command=radiobutton_click) radio1.pack() radio2 = tk.Radiobutton(root, text="Radio 2", variable=radiobutton_var, value=2, command=radiobutton_click) radio2.pack()
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

该代码创建了一个名为radiobutton_var的单选框变量,父窗口为root。两个Radiobutton控件的variable参数均指定为radiobutton_var,value参数分别为1和2,表示两个Radiobutton控件的选项值。command参数指定了当单选框状态发生变化时触发的函数。radiobutton_click()函数将标签控件的文本设置为“Radio 1 selected!”或“Radio 2 selected!”。

以上我们介绍了如何使用Tkinter创建GUI应用程序,并创建了标签、按钮、输入框、复选框和单选框等常见控件。这只是Tkinter的入门教程,还有很多高级用法和控件需要进一步学习。希望读者可以通过本文的介绍,进一步了解Tkinter的使用和应用。

国庆祝福

程序设计

import tkinter as tk import random as ra import threading as td import time as ti def Happy(): root = tk.Tk() width = 200 height = 50 screenwidth = root.winfo_screenwidth() screenheight = root.winfo_screenheight() x = ra.randint(0, screenwidth) y = ra.randint(0, screenheight) root.title("⭐") root.geometry("%dx%d+%d+%d" % (width, height, x, y)) tk.Label(root, text='国庆快乐!', fg='gold', bg='red', font=("Comic Sans MS", 20), width=30, height=5).pack() root.mainloop() ……
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19

完整代码

https://want595.blog.csdn.net/article/details/128740923

程序分析

这段代码使用了Python的GUI库Tkinter,创建了一个国庆节主题的GUI效果。

首先定义了一个用于祝福的函数Happy(),该函数会弹出一个窗口,显示“国庆快乐!”的字样,同时窗口的位置和大小是随机的。这样就可以在屏幕上随机弹出多个祝福窗口,增加祝福的趣味性。

接着定义了一个用于背景的函数Star(),该函数会弹出一个全屏的窗口,窗口中央显示一个大星星,效果非常喜庆,符合国庆节的主题。为了实现全屏,代码使用了winfo_screenwidth()和winfo_screenheight()方法获取屏幕的分辨率,然后将窗口的大小设置为屏幕分辨率大小,实现了全屏显示的效果。

在主函数中,首先使用td.Thread创建了一个用于Star()函数的线程,并将该线程设置为守护线程。这样当主线程结束时,守护线程也会随之结束,从而实现了全屏星星的背景效果。接着使用循环创建了10个用于Happy()函数的线程,并将这些线程都设置为守护线程。循环中的ti.sleep(0.1)是为了让线程之间有一定的时间间隔,避免多个祝福窗口同时弹出造成视觉上的混乱。

总的来说,这段代码使用了Tkinter的控件和线程功能,实现了一个非常有趣的GUI效果。同时,通过这个例子也可以学到一些Tkinter的基本用法,例如创建窗口和控件、设置控件的属性等。

尾声

小伙伴们都放了几天假呢?

标签:
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

在线投稿:投稿 站长QQ:1888636

后台-插件-广告管理-内容页尾部广告(手机)
关注我们

扫一扫关注我们,了解最新精彩内容

搜索