首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Python中创建简单的消息框?

如何在Python中创建简单的消息框?
EN

Stack Overflow用户
提问于 2010-06-03 12:07:21
回答 17查看 410.6K关注 0票数 147

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

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

我试过tkMessageBox:

代码语言:javascript
复制
import tkMessageBox
tkMessageBox.showinfo(title="Greetings", message="Hello World!")

但这会在后台打开另一个带有tk图标的窗口。我不想这样。我正在寻找一些简单的wxPython代码,但它总是需要设置一个类和进入一个应用程序循环等。

EN

回答 17

Stack Overflow用户

回答已采纳

发布于 2013-03-07 23:43:11

您可以使用导入和单行代码,如下所示:

代码语言:javascript
复制
import ctypes  # An included library with Python install.   
ctypes.windll.user32.MessageBoxW(0, "Your text", "Your title", 1)

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

代码语言:javascript
复制
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)

请注意,样式如下:

代码语言:javascript
复制
##  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

票数 316
EN

Stack Overflow用户

发布于 2010-06-03 13:54:47

你有没有看过easygui

代码语言:javascript
复制
import easygui

easygui.msgbox("This is a message!", title="simple gui")
票数 57
EN

Stack Overflow用户

发布于 2011-07-16 19:03:54

您还可以在收回其他窗口之前对其进行定位,以便对消息进行定位

代码语言:javascript
复制
#!/usr/bin/env python

from Tkinter import *
import tkMessageBox

window = Tk()
window.wm_withdraw()

#message at x:200,y:200
window.geometry("1x1+200+200")#remember its .geometry("WidthxHeight(+or-)X(+or-)Y")
tkMessageBox.showerror(title="error",message="Error Message",parent=window)

#centre screen message
window.geometry("1x1+"+str(window.winfo_screenwidth()/2)+"+"+str(window.winfo_screenheight()/2))
tkMessageBox.showinfo(title="Greetings", message="Hello World!")
票数 22
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2963263

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档