0

我有一个使用 wxPython 作为 GUI 的 Python 应用程序。它在 Windows XP 机器上运行良好,但我需要在我的 Mac 上处理它。

在 OSX 上,运行 main.py 可以工作,它会打开一个名为“Python”的窗口(并保持进程在终端中运行)。但是,在 XP 中 Python 窗口有 GUI 的地方,OSX 版本是完全不可见的。什么都没有显示(但应用程序肯定是打开的。在“不可见窗口”中按回车会导致终端中的预期响应)

我可能需要添加/修改什么才能使任何内容实际显示在 OSX 上?除了指定的字体('MS Shell Dig 2')外,窗口初始化代码似乎都与操作系统无关。

4

1 回答 1

1

你有一个wx.Panel作为你的框架的主要孩子吗?在主框架中创建一个面板,并将其余控件添加到该面板而不是框架本身。我记得有一些与您类似的问题以这种方式解决。

快速展示这个想法的东西:

import wx

class MainWindow(wx.Frame):
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)
        self.panel = wx.Panel(self)
        # Add other controls to the main panel, not the frame
        self.text = wx.TextCtrl(self.panel) 
        self.Show()

app = wx.App(False)
win = MainWindow(None)
app.MainLoop()
于 2012-04-12T17:38:57.903 回答