为什么我不能在OS X上更改tkMessagebox.askyesno()上的图标?

时间:2016-09-28 20:12:49

标签: python macos tkinter tkmessagebox

OS X上的

tkMessageBox.askyesno('Title', 'Message', icon=tkMessageBox.WARNING)只是给了我火箭图标。

我知道OS X和tkMessageBox图标有些奇怪,因为tkMessageBox.showerror()只显示火箭图标,但tkMessageBox.showwarning显示黄色三角形(角落里有一个小火箭)

这是一个错误吗?

是否有一些解决方法可以获得警告三角形和是/否按钮而无需从头开始制作我自己的消息框窗口?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案:

tkMessageBox.askretrycancel(title, message, type=tkMessageBox.YESNO)

似乎有效,但两个按钮都会按下False,因此没有任何用处。

tkMessageBox.showwarning(title, message, type=tkMessageBox.YESNO)

也可以正常工作,但要注意它会返回'yes''no',而不是TrueFalse。这是唯一真正的选择。

如果有人能告诉我这是不是一个错误,我仍然会感兴趣。