0

GUI に wxPython を使用する Python アプリケーションがあります。Windows XP マシンでは正常に動作しますが、Mac で作業する必要があります。

OSX では、main.py を実行すると動作し、「Python」というウィンドウが表示されます (ターミナルでプロセスを実行し続けます)。しかし、XP では Python ウィンドウに GUI があり、OSX バージョンはまったく見えません。何も表示されません (ただし、アプリケーションは確実に開いています。「見えないウィンドウ」で Enter キーを押すと、ターミナルで期待どおりの応答が返されます)

OSXで実際に何かを表示するには、何を追加/変更する必要がありますか? 指定されたフォント ('MS Shell Dig 2') を除いて、ウィンドウの初期化コードはすべて OS に依存しないようです。

4

1 に答える 1

1

wx.Panelあなたのフレームのメインの子としてを持っていますか? メイン フレームに 1 つのパネルを作成し、フレーム自体ではなく、残りのコントロールをそのパネルに追加します。この方法で解決されたあなたに似た問題がいくつかあったことを思い出します。

アイデアを簡単に示すもの:

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 に答える