python - 如何在 Python 中创建一个简单的消息框?

标签 python wxpython tkinter

我正在寻找与 JavaScript 中的 alert() 相同的效果。

今天下午我使用 Twisted.web 编写了一个简单的基于 Web 的解释器。你基本上是通过一个表单提交一个 Python 代码块,然后客户端来抓取它并执行它。我希望能够制作一个简单的弹出消息,而不必每次都重新编写一大堆样板 wxPython 或 TkInter 代码(因为代码通过表单提交然后消失)。

我试过 tkMessageBox:

import tkMessageBox
tkMessageBox.showinfo(title="Greetings", message="Hello World!")

但这会在后台打开另一个带有 tk 图标的窗口。我不想要这个。我一直在寻找一些简单的 wxPython 代码,但它总是需要设置一个类并进入一个应用程序循环等。在 Python 中制作消息框没有简单、无捕获的方法吗?

最佳答案

您可以像这样使用导入和单行代码:

import ctypes  # An included library with Python install.   
ctypes.windll.user32.MessageBoxW(0, "Your text", "Your title", 1)

或者像这样定义一个函数(Mbox):

import ctypes  # An included library with Python install.
def Mbox(title, text, style):
    return ctypes.windll.user32.MessageBoxW(0, text, title, style)
Mbox('Your title', 'Your text', 1)

注意样式如下:

##  Styles:
##  0 : OK
##  1 : OK | Cancel
##  2 : Abort | Retry | Ignore
##  3 : Yes | No | Cancel
##  4 : Yes | No
##  5 : Retry | Cancel 
##  6 : Cancel | Try Again | Continue

玩得开心!

注意:编辑为使用 MessageBoxW 而不是 MessageBoxA

关于python - 如何在 Python 中创建一个简单的消息框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2963263/

相关文章:

python - 检查是否在 tkinter 中按下了修改键

python - django类型错误无法连接str和延迟属性对象

python - wx.Python : How can I draw some lines into wx. 静态框

Python tkinter Askopenfilename() 未打开和响应

python-3.x - wxPython TreeCtrl 非常慢,有数百万个节点(在多选树控件上)

python - 等价于 wxPython 中的 HTML 多选框

python - 当满足特定条件时无法显示另一个 tkinter 框架

python - 如何在 OSX 上通过 Python Tkinter 安装和使用 TkDnD?

python - 制作或预定义嵌套字典/JSON 的结构 || Python

python - 如何在 django 中间件中重定向?全局名称 'view' 未定义