You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从Tkinter的messagebox弹出提示框中复制展示的文本内容

Tkinter messagebox 文本复制解决方案

有两种常用的实现方案,你可以根据需求选择:

方案1:无需修改代码,直接用系统快捷键复制

Tkinter 调用的是系统原生的 messagebox 组件,默认支持全量内容复制,操作步骤如下:

  • 弹窗弹出后,点击弹窗区域确保它处于激活状态
  • 按下快捷键 Ctrl + C(Windows/Linux)或 Cmd + C(MacOS),弹窗的标题、所有文本内容就会被复制到剪贴板,粘贴后即可提取你需要的邮箱和密码。

注意:这个方式只能全量复制所有内容,无法选中部分文本单独复制。

方案2:自定义弹窗,支持选中/一键复制(体验更优)

如果需要支持选中部分文本、或者一键复制密码,可以替换默认的 messagebox 为自定义的 Toplevel 弹窗,示例实现代码如下:

from tkinter import Toplevel, Label, Entry, Button

def show_stored_credential(website, email, password):
    # 初始化自定义弹窗
    popup = Toplevel()
    popup.title(website)
    
    # 邮箱展示(只读Entry支持选中复制)
    Label(popup, text="邮箱:").grid(row=0, column=0, padx=5, pady=5, sticky="w")
    email_input = Entry(popup, width=45)
    email_input.insert(0, email)
    email_input.config(state="readonly")
    email_input.grid(row=0, column=1, padx=5, pady=5)
    
    # 密码展示
    Label(popup, text="密码:").grid(row=1, column=0, padx=5, pady=5, sticky="w")
    pwd_input = Entry(popup, width=45)
    pwd_input.insert(0, password)
    pwd_input.config(state="readonly")
    pwd_input.grid(row=1, column=1, padx=5, pady=5)
    
    # 可选:新增一键复制密码按钮
    def copy_password():
        popup.clipboard_clear()
        popup.clipboard_append(password)
    Button(popup, text="复制密码", command=copy_password).grid(row=2, column=1, padx=5, pady=10, sticky="e")

后续把你原来调用 messagebox.showinfo 的代码替换为调用上述 show_stored_credential 函数即可,无需调整其他业务逻辑。

内容的提问来源于stack exchange,提问作者DaveMier88

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.07 23:54:04