实用指南:python满屏无限弹窗表白代码

开发过程

一、准备工作

首先,确保你的电脑上已经安装了Python环境。我们需要安装Tkinter是Python标准库中的一个GUI(Graphical User Interface,图形用户界 面)工具包,其目的是为Python开发者提供快捷创建GUI应用程序的方式。

二、编写代码

接下来,大家将通过编写一个简单的Python脚本来实现满屏无限弹窗的效果。以下是一个主要的示例代码:

import tkinter as tk
import random as ra
import threading as td
import time as ti
import sys
# 定义爱心文字列表,增加多样性
love_texts = [
    '我喜欢你', '❤️', '喜欢你', 'love you',
    '想你了', '❤️❤️❤️', '永远爱你', '你最可爱',
    '心动瞬间', '满屏爱意', '❤️心动', '超喜欢你',
    '你是我的唯一', '我爱你', '❤️永恒', '我想和你在一起',
    '遇见你真好', '❤️心之所向', '每天想你', '你最特别',
    '一生有你', '❤️甜甜蜜蜜', '喜欢你的一切', '只喜欢你',
    '心跳加速', '❤️浪漫时光', '我愿意', '有你真好',
    '满眼都是你', '❤️不离不弃', '深情不及久伴', '爱你到永远',
    '你偷走了我的心', '❤️命中注定', '思念成海', '执子之手',
    '与子偕老', '❤️岁月静好', '心只为你动', '专属告白',
    'love u forever', '❤️一心一意', '爱的告白', '非你不可'
]
# 定义颜色列表 - 更明艳、简单、丰富的颜色选择
colors = [
    '#F8C8DC',  # 柔和粉色
    '#F5A9CB',  # 浅粉色
    '#E9967A',  # 柔和珊瑚色
    '#F0E68C',  # 卡其色
    '#98FB98',  # 浅绿色
    '#87CEEB',  # 天蓝色
    '#DDA0DD',  #  plum
    '#FFDAB9',  # 桃子色
    '#B0E0E6',  # 淡钢蓝
    '#D8BFD8',  # 淡紫色
    '#FFE4B5',  # 新罗马金色
    '#E6E6FA',  # 淡紫色
    '#FFEBCD',  # 米色
    '#F5DEB3',  # 小麦色
    '#98D8C8',  # 淡青色
    '#F9CB9C',  # 浅橙色
    '#C9A0DC',  # 浅紫色
    '#B5EAD7',  # 淡绿色
    '#C7CEEA',  # 淡蓝色
    '#FCE1E4'   # 超浅粉色
]
# 定义字体列表
fonts = [
    ("Comic Sans MS", 15),
    ("Arial", 16),
    ("SimHei", 14),
    ("微软雅黑", 15),
    ("幼圆", 16)
]
def create_popup():
    """创建单个弹窗窗口"""
    try:
        # 创建Tkinter窗口
        root = tk.Tk()
        # 随机窗口大小
        width = ra.randint(100, 250)
        height = ra.randint(50, 100)
        # 获取屏幕大小
        screenwidth = root.winfo_screenwidth()
        screenheight = root.winfo_screenheight()
        # 随机位置
        x = ra.randint(0, screenwidth - width)
        y = ra.randint(0, screenheight - height)
        # 设置窗口标题和大小位置
        root.title(ra.choice(['❤', '', '', '']))
        root.geometry(f"{width}x{height}+{x}+{y}")
        # 设置窗口透明度(可选)
        root.attributes('-alpha', ra.uniform(0.8, 1.0))
        # 随机选择背景色、文字颜色、文字内容和字体
        bg_color = ra.choice(colors)
        fg_color = 'black'  # 文字颜色固定为黑色
        text = ra.choice(love_texts)
        font = ra.choice(fonts)
        # 创建标签
        label = tk.Label(
            root,
            text=text,
            fg=fg_color,
            bg=bg_color,
            font=font,
            width=width//10,
            height=height//20
        )
        label.pack(fill=tk.BOTH, expand=True)
        # 设置窗口置顶
        root.attributes('-topmost', True)
        # 窗口点击关闭
        root.protocol("WM_DELETE_WINDOW", lambda: root.destroy())
        # 移除自动关闭功能,让弹窗保持在屏幕上
        # 启动窗口主循环
        root.mainloop()
    except Exception as e:
        # 捕获异常,防止单个窗口出错影响整体程序
        pass
def popup_loop():
    """无限创建弹窗的循环"""
    try:
        while True:
            # 创建线程来显示弹窗
            thread = td.Thread(target=create_popup)
            thread.daemon = True  # 设置为守护线程,主线程结束时自动结束
            thread.start()
            # 设置固定延迟,让弹窗堆积效果更明显
            ti.sleep(0.05)  # 更快的弹窗创建速度
    except KeyboardInterrupt:
        # 处理Ctrl+C中断
        print("程序已停止")
        sys.exit(0)
if __name__ == "__main__":
    try:
        print("爱心弹窗堆积程序已启动!按Ctrl+C停止")
        print("提示:弹窗将持续堆积在屏幕上,数量过多可能影响系统性能")
        popup_loop()
    except KeyboardInterrupt:
        print("程序已停止")

posted @ 2025-12-13 15:40  gccbuaa  阅读(34)  评论(0)    收藏  举报