2011-08-04 9 views
3

OSXとWindowsの両方で動作する普遍的なPythonアプリケーションを作成できますか?同じメニューシステムなどで?あるいは、OSごとに異なるバージョンを作る必要がありますか?ユニバーサルPythonアプリケーションの作成方法

+0

「メニューシステム」と言えば、Windowsベースのアプリがありますか? – OnesimusUnbound

+3

[Pythonアプリケーションをデプロイするためのクロスプラットフォームguiツールキット](http:// stackoverflow。com/questions/520015/cross-platform-gui-toolkit-for-deployment-python-applications) – agf

+0

[wxPython](http://www.wxpython.org/) – OnesimusUnbound

答えて

3

はい。あなたはそのインターフェイスのためにQtを使ってそれを構築することができます。そして、あなたは、それが実行されているオペレーティングシステムに関係なく、すべてがうまくいくことを確認するためにosライブラリを賢明に使用しなければなりません。しかし、配布用にパッケージ化する場合は、別々に行う必要があります。 Windowsではpy2exeを使うことができます。py2exeはバイナリパッケージをビルドし、Pythonランタイムと使用するすべてのライブラリにバンドルします。私はそれがどのようにMacで動作するか分からない。

0

いくつかのクロスプラットフォームツールを試すことができます。 Appcelerator Titanium Desktopは、Pythonベースの開発をサポートしています。

6

私はwxPythonでいくつかのクロスプラットフォームアプリケーション(Windows/OS X)を構築しました。実際には、すべてのコードが2つのプラットフォーム間で完璧に変換されます。文脈にすると、私は通常、Mac OS側でアプリケーションを開発しています。アプリケーションを叩いて1週間かかるとすれば、Windowsでうまく動作するには数時間を費やします。

通常、これらの時間は、で構成されています

埋め込まれたアイコン
  • キーボードショートカット(CTRL対CMD)
  • メインメニューのような素敵なものを作るマイナーwxPythonのビジュアル(フォントサイズ、色)
  • を微調整

    正確に指摘したように、同じメインメニューが必要な場合は、先行する作業がありますOS X側。私自身は本当に心配していない、私はいくつかの追加のOS Xのデフォルトのメインメニューのビットと作品を持っている上品です。

    メインメニューのものは別として、少し微調整しなければならないことを考えれば、wxPythonが行く方法だと思います。 Windows側のpx2exeとOS X側のpy2appと一緒に、かなりのパンチを詰める。

  • 0

    現在私のUbuntu Linuxマシンにアプリケーションを開発しています。私はタッチパッド付きのWindows XPマシン上で動作する実生活です。

    私はguiツールキットとしてwxPythonを使用しています。過去に私は.netを主に使用しましたが、クロスプラットフォームが必要でした。

    実際に実行されているOSについては何も確認せずに実行されます。あなたはどのos.systemの呼び出しに依存している場合、あなたも可能性

    ...すでに与えられているものにに追加するには

    0

    (私はテキストファイルを読んで、私は行末を持ついくつかの問題を持っている1つのチェックを保存)あなたのコードがさまざまなプラットフォームを扱う必要がある場所に、うまく、別の方法で走ります。

    例として、私はpdfファイルを開くヘルプメニューオプションを持つアプリケーションを持っています。 私のコードは次のようになります:

    if arch.find("indows"): 
        os.system("start " + help_filename) 
    elif arch.find("inux"): 
        os.system("xdg-open " + help_filename) 
    else: # really this is the Mac case 
        os.system("open " + help_filename) 
    
    関連する問題