系列文章
序号 | 文章目录 | 直达链接 |
---|---|---|
1 | 浪漫520表白代码 | https://want595.blog.csdn.net/article/details/130666881 |
2 | 满屏表白代码 | https://want595.blog.csdn.net/article/details/129794518 |
3 | 跳动的爱心 | https://want595.blog.csdn.net/article/details/129503123 |
4 | 漂浮爱心 | https://want595.blog.csdn.net/article/details/128808630 |
5 | 爱心光波 | https://want595.blog.csdn.net/article/details/132311588 |
6 | 流星雨 | https://want595.blog.csdn.net/article/details/129395465 |
7 | 满天星 | https://want595.blog.csdn.net/article/details/129572082 |
8 | 烟花秀 | https://want595.blog.csdn.net/article/details/128746664 |
9 | 圣诞树 | https://want595.blog.csdn.net/article/details/128213770 |
10 | 雪花代码 | https://want595.blog.csdn.net/article/details/129038108 |
11 | 模拟星空 | https://want595.blog.csdn.net/article/details/129948882 |
12 | 生日蛋糕 | https://want595.blog.csdn.net/article/details/129694998 |
13 | 樱花树 | https://want595.blog.csdn.net/article/details/130350743 |
14 | 五彩气球 | https://want595.blog.csdn.net/article/details/130950744 |
15 | 七彩花朵 | https://want595.blog.csdn.net/article/details/130897838 |
16 | 恶搞代码 | https://want595.blog.csdn.net/article/details/131274862 |
文章目录
- 系列文章
- 前言
- Tkinter界面设计
- Threading多线程
- 恶搞代码
- 尾声
前言
快来领取python无限弹窗恶搞代码吧!每天写一些有趣的小程序,带你成为一个有趣的程序员!(完整代码文末公众号免费领取哦)
Tkinter界面设计
1. 创建一个简单的界面
Tkinter 是 Python 标准库中的一个 GUI(图形用户界面)模块,它可以让你创建窗口、标签、按钮、菜单等等交互式的界面。以下是 Tkinter 中一些简单的函数使用方法。
- 导入 Tkinter 包:
import tkinter
- 创建主窗口:
root = tkinter.Tk()
- 创建标签:
label = tkinter.Label(root, text="Hello, World!")
- 显示标签:
label.pack()
- 进入主循环:
root.mainloop()
完整的程序:
import tkinterroot = tkinter.Tk()label = tkinter.Label(root, text="Hello, World!")label.pack()root.mainloop()
这个程序会创建一个带有 “Hello, World!” 标签的窗口,并且会一直保持在屏幕上直到退出程序。
2. 简单的控件
在 Tkinter 中,有许多控件可用来创建图形用户界面。下面是一些简单的控件及其用法:
- Label (标签)
用于显示文本或图像。
import tkinterroot = tkinter.Tk()label = tkinter.Label(root, text = "Hello World!")label.pack()root.mainloop()
- Button (按钮)
用于执行操作或触发事件。
import tkinterroot = tkinter.Tk()def buttonClicked():print("Button clicked")button = tkinter.Button(root, text = "Click me", command = buttonClicked)button.pack()root.mainloop()
- Entry (输入框)
用于获取用户输入的文本。
import tkinterroot = tkinter.Tk()entry = tkinter.Entry(root)entry.pack()def buttonClicked():print("The text entered is:", entry.get())button = tkinter.Button(root, text = "Submit", command = buttonClicked)button.pack()root.mainloop()
以上控件都是 Tkinter 中的基本控件,掌握了这些,就可以开始创建简单的GUI程序了。
Threading多线程
在 Python 中,可以使用 threading
模块来创建和管理线程。线程是程序执行流的最小单元,不同于进程,所有线程共享同一份数据。下面是一些简单的 threading 使用方法和函数。
- 导入 threading 模块
import threading
- 创建线程
可以使用 Thread
类创建一个线程。需要给类的构造函数传递一个可调用的函数作为参数,这个函数将会在线程中运行。
def myThread():print("Thread is running")thread = threading.Thread(target=myThread)thread.start()
- 线程间通信
可以使用队列(Queue)和共享内存(Value 和 Array)等机制在线程间传递数据。
使用 Queue:
import threadingimport queuequeue = queue.Queue()def myThread(queue, message):queue.put(message)thread = threading.Thread(target=myThread, args=(queue, 'Hello, World'))thread.start()message = queue.get()print(message)
使用 Value:
import threadingvalue = threading.Value('i', 0)def myThread(value):value.value += 1thread = threading.Thread(target=myThread, args=(value,))thread.start()print(value.value)
以上是一些线程使用方法和函数的示例。需要注意的是,多线程程序的正确性可能会受到许多因素的影响,比如数据竞争、死锁、饥饿等等,需要仔细考虑和设计线程间的交互机制。
恶搞代码
在简单了解了Tkinter界面设计以及Threading多线程后,我们就可以写一个恶搞好友的程序啦!
1. 恶作剧界面
以下程序实现了一个简单的恶搞界面
def Death():root=tk.Tk()width=200height=50screenwidth=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='white',bg='black',font=("Comic Sans MS",15),width=30,height=5).pack()root.mainloop()
2. 恶搞界面的数量
建议for循环中的层数设置适当,避免程序复杂度过大导致系统崩溃(以下代码将for循环设置了十层,会产生10个小窗体)
def Start():for i in range(10):t=td.Thread(target=Death)ti.sleep(0.1)t.start()
尾声
感谢支持吖!