Python 2.7(32位)Windows:我们正在尝试Python 2.7对主题TKINTER的支持(ttk)对于简单的gui,给人留下了深刻的印象!新主题支持似乎很短的一个领域是如何包装OS特定的常见对话框。

纠正:换句话说, MessageBoxColorChooser 常见的对话框具有“丑陋”的赢得95风格的块状按钮,而主题(圆形/渐变)按钮通常在XP,Vista和Windows 7下出现在这些常见的对话框上。(我正在所有3个平台上测试所有3个平台相同的,未主题的结果)。

注意:filedialog公共对话框(askopenfilename, askopenfilenames, asksaveasfilename, askdirectory)都是正确的主题。

import tkMessageBox as messagebox
messagebox.showinfo()

import tkColorChooser as colorchooser
color = colorchooser.askcolor( parent=root, title='Customize colors' )

关于获得TKINTER需要的任何想法 MessageBoxColorChooser 通用对话框是兼容OS主题(至少在Windows XP或更高版本下)?

有帮助吗?

解决方案

您的观察主要是正确的。我确实看到了您在 messageboxcolorchooser. 。但是,我的filedialog似乎都有正确的圆形按钮,等等。

我建议您制作消息框的建议是使用 TopLevel 窗口小部件,然后定义您的需求以及不同按钮的适当行为(绝对比使用Message Box更难,但是如果您确实需要新样式的按钮,则可以使用)。

我认为您无法将其侵犯 colorchooser 但是,问题。

虽然我一分钟也许Python 3.1解决了这个问题,但可悲的是,我尝试过,事实并非如此。我想,如果您需要用户选择颜色,则按钮必须丑陋。

其他提示

获取更好外观的对话框的选项是将脚本编译为可执行文件 pyinstaller. 。我更加解释 这里.

tl; dr,似乎与 pyinstaller 允许您使用当前正在运行的操作系统的样式的对话框,但不能使用自定义样式。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top