欢迎光临
我们一直在努力

爱心弹窗代码(Python版)

目录

程序简介

效果展示

源码展示

系统要求

 基本要求

 必需软件

 检查Python安装

安装步骤

 步骤1:准备程序文件

步骤2:运行程序

 方法一:命令行运行(推荐)

 方法二:使用Python IDE

 ⚠️ 重要警告

 系统影响

 性能影响:

 使用影响:

 使用建议

程序运行流程

 阶段1:爱心形成(约5秒)

 阶段2:全屏覆盖(约1030秒)

 阶段3:自动关闭

 ⏹️ 停止程序

 正常退出

 强制退出方法

 方法一:键盘快捷键

 方法二:任务管理器(Windows)

 方法三:活动监视器(macOS)

 方法四:系统监视器(Linux)

自定义设置

 修改温馨话语

 调整弹窗大小

 改变显示时间

 调整爱心大小

 改变显示速度

故障排除

 常见问题及解决方案

 问题1:提示"python不是内部或外部命令"

 问题2:提示"No module named 'tkinter'"

 问题3:程序卡死无响应

 问题4:弹窗显示位置不正确

使用技巧

 浪漫惊喜时机

 最佳运行环境


程序简介

这是一个用Python编写的浪漫弹窗程序,专为表达爱意和关心而设计。程序会:

1. 首先在屏幕中央形成一个由弹窗组成的爱心图案

2. 随后在整个屏幕上随机显示更多弹窗

3. 每个弹窗都显示不同的温馨话语

4. 所有弹窗会在指定时间后自动关闭

效果展示

心形代码

源码展示

import random
import tkinter as tk
import threading
import math
import time

# 温馨提示语列表
tips = [
"我想你了", "别熬夜哦", "要开心呀", "我爱你", "早点休息",
"记得吃饭", "多喝热水", "你最棒啦", "晚安好梦", "I LOVE YOU",
"照顾好自己", "想见到你", "一直在等你", "别太累了"
]

# 自动获取屏幕分辨率
try:
root_temp = tk.Tk()
SCREEN_W = root_temp.winfo_screenwidth()
SCREEN_H = root_temp.winfo_screenheight()
root_temp.destroy()
except:
SCREEN_W = 1920
SCREEN_H = 1080

# 弹窗尺寸
WINDOW_W = 120
WINDOW_H = 60

# 存储所有窗口引用
all_windows = []

def generate_heart_points(num_points=80):
"""生成心形轨迹坐标"""
points = []
for t in range(num_points):
t_rad = t / num_points * 2 * math.pi
# 心形参数方程
x = 16 * (math.sin(t_rad) ** 3)
y = 13 * math.cos(t_rad) – 5 * math.cos(2 * t_rad) – 2 * math.cos(3 * t_rad) – math.cos(4 * t_rad)
# 映射到屏幕坐标
screen_x = SCREEN_W // 2 + x * 15
screen_y = SCREEN_H // 2 – y * 15
# 边界校验
screen_x = max(WINDOW_W // 2, min(screen_x, SCREEN_W – WINDOW_W // 2))
screen_y = max(WINDOW_H // 2, min(screen_y, SCREEN_H – WINDOW_H // 2))
points.append((int(screen_x – WINDOW_W // 2), int(screen_y – WINDOW_H // 2)))
return points

def show_heart_window(x, y):
"""创建心形弹窗"""
root = tk.Tk()
root.overrideredirect(True)
root.attributes("-topmost", True)

# 心形窗口使用红色系
r = random.randint(200, 255)
g = random.randint(100, 150)
b = random.randint(100, 150)

root.configure(bg=f'#{r:02x}{g:02x}{b:02x}')

tip = random.choice(tips)

label = tk.Label(root, text=tip, font=("微软雅黑", 10, "bold"),
bg=f'#{r:02x}{g:02x}{b:02x}', fg='white',
wraplength=WINDOW_W-10)
label.pack(fill=tk.BOTH, expand=True, padx=5, pady=5)

root.geometry(f"{WINDOW_W}x{WINDOW_H}+{x}+{y}")

all_windows.append(root)

# 60秒后自动关闭窗口
root.after(60000, root.destroy)

# 启动主循环
root.mainloop()

def create_random_window():
"""创建随机位置的弹窗,30秒后关闭"""
root = tk.Tk()
root.overrideredirect(True)
root.attributes("-topmost", True)

# 随机颜色
r = random.randint(55, 255)
g = random.randint(55, 255)
b = random.randint(55, 255)

root.configure(bg=f'#{r:02x}{g:02x}{b:02x}')

tip = random.choice(tips)

label = tk.Label(root, text=tip, font=("微软雅黑", 10, "bold"),
bg=f'#{r:02x}{g:02x}{b:02x}', fg='white',
wraplength=WINDOW_W-10)
label.pack(fill=tk.BOTH, expand=True, padx=5, pady=5)

# 随机位置
x = random.randint(0, SCREEN_W – WINDOW_W)
y = random.randint(0, SCREEN_H – WINDOW_H)

root.geometry(f"{WINDOW_W}x{WINDOW_H}+{x}+{y}")

all_windows.append(root)

# 60秒后自动关闭窗口
root.after(60000, root.destroy)

# 启动主循环
root.mainloop()

def create_fullscreen_windows():
"""创建覆盖全屏的弹窗"""
# 计算需要多少个弹窗来覆盖屏幕
cols = (SCREEN_W // WINDOW_W) + 7
rows = (SCREEN_H // WINDOW_H) + 7
total_windows = cols * rows

print(f"正在创建 {total_windows} 个弹窗覆盖屏幕…")

threads = []
for i in range(total_windows):
t = threading.Thread(target=create_random_window)
threads.append(t)
t.start()

# 控制创建速度,避免系统卡顿
if i % 10 == 0: # 每10个窗口暂停一下
time.sleep(0.1)

def heart_animation():
"""心形弹窗动画"""
# 生成心形位置
heart_points = generate_heart_points(60)

print("正在逐步显示心形弹窗…")

# 逐步创建心形弹窗
threads = []
for i, (x, y) in enumerate(heart_points):
t = threading.Thread(target=show_heart_window, args=(x, y))
threads.append(t)
t.start()
time.sleep(0.08) # 逐步显示的间隔

# 等待心形显示完成
time.sleep(2)

# 计算中央位置
center_x = SCREEN_W // 2 – WINDOW_W // 2
center_y = SCREEN_H // 2 – WINDOW_H // 2

print("开始满屏弹窗…")

# 开始满屏弹窗
fullscreen_thread = threading.Thread(target=create_fullscreen_windows)
fullscreen_thread.start()

if __name__ == "__main__":
# 启动心形动画
animation_thread = threading.Thread(target=heart_animation)
animation_thread.start()

# 保持程序运行
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
print("程序结束")
# 关闭所有窗口
for window in all_windows:
try:
window.destroy()
except:
pass

系统要求

 基本要求

 操作系统:Windows 10/11、macOS 10.14+ 或 Linux(需图形界面)

 Python版本:Python 3.x

 内存:至少 2GB 可用内存

 显示器:支持任何分辨率的显示器

 必需软件

 Python 3.x

 tkinter 图形界面库(通常随Python一起安装)

 检查Python安装

打开命令行/终端,输入:

python –version

如果显示Python 3.x版本号,说明已安装。

安装步骤

 步骤1:准备程序文件

1. 复制提供的代码

2. 新建文本文件,命名为 `love.py`

3. 将代码粘贴到文件中

4. 保存文件 

步骤2:运行程序

 方法一:命令行运行(推荐)

1. 打开命令行/终端

2. 进入程序所在目录:

cd /path/to/your/file

3. 运行程序:

   python love.py

 方法二:使用Python IDE

1. 打开PyCharm、VSCode等Python开发环境

2. 打开 `love.py` 文件

3. 点击运行按钮或按F5

 ⚠️ 重要警告

 系统影响

 性能影响:

程序会创建大量窗口,可能导致:

   系统暂时卡顿或变慢

   内存使用量增加

   CPU使用率升高

 使用影响:

   运行期间难以进行其他操作

   可能影响正在运行的程序

   全屏应用程序可能被弹窗覆盖

 使用建议

 ✅ 在不需要使用电脑时运行

 ✅ 提前保存所有工作文档

 ✅ 关闭重要应用程序

 ❌ 不要在工作会议期间运行

 ❌ 不要在玩游戏时运行

 ❌ 不要在处理重要任务时运行

程序运行流程

 阶段1:爱心形成(约5秒)

 程序启动后,首先在屏幕中央显示爱心形状的弹窗

 弹窗从爱心底部开始,逐步显示完整爱心

 此阶段弹窗颜色为红色系

 阶段2:全屏覆盖(约1030秒)

 爱心显示完成后,开始在全屏随机位置显示弹窗

 弹窗数量足以覆盖整个屏幕

 此阶段弹窗颜色丰富多彩

 阶段3:自动关闭

 所有弹窗在显示60秒后自动关闭

 程序主进程会持续运行直到手动终止

 ⏹️ 停止程序

 正常退出

等待所有弹窗自动关闭(约60秒)

 强制退出方法

 方法一:键盘快捷键

按 `Ctrl + C`(在命令行窗口中)

 方法二:任务管理器(Windows)

1. 按 `Ctrl + Shift + Esc` 打开任务管理器

2. 找到 `Python` 或 `python` 进程

3. 右键点击,选择"结束任务"

 方法三:活动监视器(macOS)

1. 按 `Command + Space`,搜索"活动监视器"

2. 找到 `Python` 进程

3. 点击"×"按钮强制退出

 方法四:系统监视器(Linux)

1. 按 `Ctrl + Alt + Delete` 或搜索"系统监视器"

2. 找到 `python` 进程

3. 右键选择"结束进程"或"杀死进程"

自定义设置

大家可以修改代码中的以下部分来自定义体验:

 修改温馨话语

找到 `tips` 列表,添加或修改话语:

tips = [

    "你的自定义话语1",

    "你的自定义话语2",

    "更多你想说的话…"

]

 调整弹窗大小

修改弹窗尺寸变量:

WINDOW_W = 150   宽度

WINDOW_H = 80    高度

 改变显示时间

修改弹窗显示时长(毫秒):

root.after(30000, root.destroy)   30秒后关闭

 调整爱心大小

修改心形缩放比例:

screen_x = SCREEN_W // 2 + x  20   增大20使爱心更大

screen_y = SCREEN_H // 2  y  20

 改变显示速度

修改弹窗显示间隔:

time.sleep(0.05)   减小数值使显示更快

故障排除

 常见问题及解决方案

 问题1:提示"python不是内部或外部命令"

解决方案:

 检查Python是否正确安装

 尝试使用 `python3` 命令

 或将Python添加到系统环境变量

 问题2:提示"No module named 'tkinter'"

解决方案:

 Windows:重新安装Python,安装时勾选"tcl/tk and IDLE"

 macOS:安装最新版Python

 Linux:安装tkinter包:

  sudo aptget install python3tk

 问题3:程序卡死无响应

解决方案:

 使用强制退出方法

 重启电脑(如无法正常退出)

 问题4:弹窗显示位置不正确

解决方案:

 程序会自动检测屏幕分辨率

 如检测失败,手动修改代码中的分辨率:  

  SCREEN_W = 1920   你的屏幕宽度

  SCREEN_H = 1080   你的屏幕高度

使用技巧

 浪漫惊喜时机

 伴侣生日或纪念日

 情人节或其他浪漫节日

 道歉或表达思念时

 远程表达爱意

 最佳运行环境

 关闭不必要的应用程序

 确保电源连接(笔记本)

 准备好在旁边观看效果

 提前告知对方可能会有系统卡顿

最后提醒:此程序旨在创造浪漫惊喜,请确保在合适的时机和环境下使用,避免影响重要工作或活动。祝您使用愉快!��

赞(0)
未经允许不得转载:171主机测评 » 爱心弹窗代码(Python版)
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址