Python中的警告框?
在Python中,是否可以像JavaScript的alert("message")那样,产生一个警告框,尤其是在一个后台运行的程序中?
这个程序会在Windows上运行,可能是在XP系统上,但2000和Vista系统也有可能。
更新:
这个程序是打算在后台运行,当满足某些条件时提醒用户。我觉得最简单的提醒方式就是弹出一个窗口,因为需要立即处理,而其他选项,比如仅仅记录日志或发送邮件,效率都不够高。
6 个回答
6
你可以使用 PyAutoGui 来创建警告框。首先,用 pip 安装 pyautogui:
pip install pyautogui
然后在 Python 中输入以下内容:
import pyautogui as pag
pag.alert(text="Hello World", title="The Hello World Box")
这里有更多的消息框,借鉴自 Javascript:
confirm()
有“确定”和“取消”按钮prompt()
可以输入文本password()
可以输入文本,但输入的字符会显示为 *
20
对于那些想要一个纯粹用Python编写的选项,不需要和Windows互动,并且可以在不同平台上使用的人,我选择了下面这个网站上列出的选项:
https://pythonspot.com/tk-message-box/ (存档链接:https://archive.ph/JNuvx)
# Python 3.x code
# Imports
import tkinter
from tkinter import messagebox
# This code is to hide the main tkinter window
root = tkinter.Tk()
root.withdraw()
# Message Box
messagebox.showinfo("Title", "Message")
你可以根据不同的情况选择显示各种类型的消息框选项:
- showinfo() - 显示信息框
- showwarning() - 显示警告框
- showerror() - 显示错误框
- askquestion() - 提问框
- askokcancel() - 确认框
- askyesno() - 是/否选择框
- askretrycancel() - 重试/取消框
根据我下面的评论编辑的代码
73
这个怎么样:
import win32api
win32api.MessageBox(0, 'hello', 'title')
另外:
win32api.MessageBox(0, 'hello', 'title', 0x00001000)
这会让这个框在其他窗口上面显示,适合用来显示紧急消息。想了解更多选项,可以查看 MessageBox 函数。